10. Service Request (サービス要求)
10. Service Request (サービス要求)
鍵交換の後, クライアントはサービスを要求します。サービスは名前で識別されます。名前の形式と新しい名前を定義する手順は [SSH-ARCH] および [SSH-NUMBERS] で定義されています。
現在, 次の名前が予約されています.
ssh-userauth
ssh-connection
サービス名にはアルゴリズム名と同様のローカル命名方針が適用されます。ローカルサービスは "servicename@domain" 形式の PRIVATE USE 構文を使用すべきです.
byte SSH_MSG_SERVICE_REQUEST
string service name
サーバーがサービス要求を拒否する場合, 適切な SSH_MSG_DISCONNECT メッセージを送信すべきです (SHOULD), かつ切断しなければなりません (MUST).
サービスが開始されると, 鍵交換中に生成されたセッション識別子にアクセスできる場合があります。
サーバーがサービスをサポートし (かつクライアントの使用を許可する) 場合, 次で応答しなければなりません (MUST).
byte SSH_MSG_SERVICE_ACCEPT
string service name
サービスが使用するメッセージ番号は, それら用に予約された領域にあるべきです ([SSH-ARCH] および [SSH-NUMBERS] を参照). トランスポート層は引き続き自身のメッセージを処理します。
暗黙のサーバー認証による鍵交換の後は, クライアントはさらにデータを送信する前にサービス要求メッセージへの応答を待たなければなりません (MUST).