メインコンテンツまでスキップ

5.1. Responses to Authentication Requests (認証リクエストへの応答)

サーバーが認証リクエストを拒否する場合、次のメッセージで応答しなければなりません:

byte      SSH_MSG_USERAUTH_FAILURE
name-list authentications that can continue
boolean partial success

'authentications that can continue' は、認証ダイアログを有益に継続できる可能性のある認証 'method name' 値のコンマ区切りの名前リストです。

サーバーは、実際に有用な 'method name' 値のみを名前リストに含めることが推奨されます。ただし、ユーザーを認証するために使用できない 'method name' 値を含めることは違法ではありません。

すでに正常に完了した認証は、何らかの理由で再度実行する必要がある場合を除き、名前リストに含めるべきではありません。

これが応答である認証リクエストが成功した場合、'partial success' の値は TRUE でなければなりません。リクエストが正常に処理されなかった場合は FALSE でなければなりません。

サーバーが認証を受け入れる場合、次のメッセージで応答しなければなりません:

byte      SSH_MSG_USERAUTH_SUCCESS

これは、マルチメソッド認証シーケンスの各ステップの後ではなく、認証が完了したときにのみ送信されることに注意してください。

クライアントは、以前のリクエストからの応答を待たずに、複数の認証リクエストを送信することができます。サーバーは、SSH_MSG_USERAUTH_FAILURE メッセージで失敗した試行を確認しなければなりません。ただし、SSH_MSG_USERAUTH_SUCCESS は認証が完了したときに一度だけ送信されなければなりません。SSH_MSG_USERAUTH_SUCCESS メッセージは、認証が成功したときにのみ送信されなければなりません(すべての必要な方法が正常に使用されました)。

SSH_MSG_USERAUTH_SUCCESS の送信につながったリクエストの後にクライアントが送信した非認証メッセージは、このプロトコルの上で実行されているサービスに渡されなければなりません。このようなメッセージは、そのメッセージ番号によって識別できます(セクション6を参照)。