データグラム コンテキスト
データグラム (コネクションレス) コンテキストのセマンティクスは、接続指向コンテキストのセマンティクスとは若干異なります。 データグラムのコネクションレス コンテキストでは、サーバーはクライアントがいつ接続をシャットダウンしたか、それ以外の場合は接続を終了したかを判断できません。 つまり、接続指向のコンテキストで発生する場合と同様に、トランスポート アプリケーションからサーバーに終了通知は渡されません。
データグラム コンテキストを使用するために、クライアントは InitializeSecurityContext (General) 関数の呼び出しでISC_REQ_DATAGRAM フラグを設定します。
重要
Microsoft Kerberos パッケージでは、ユーザー間モードのデータグラム コンテキストはサポートされていません。
一部のモデル (特に DCE スタイルの RPC) をより適切にサポートするために、クライアントがデータグラム コンテキストを使用する場合は、次の規則が適用されます。
- セキュリティ パッケージは、InitializeSecurityContext (General) の最初の呼び出しで認証 BLOB (バイナリ ラージ オブジェクト) を生成しません。 ただし、クライアントは MakeSignature 関数の呼び出しで返されたセキュリティ コンテキストを使用して、メッセージの署名を生成できます。
- サーバーが予告なしに接続を削除できるようにするには、セキュリティ パッケージでコンテキストを複数回再確立できるようにする必要があります。 これは、MakeSignature 関数と VerifySignature 関数で使用されるすべてのキーを一貫した状態にリセットできることを意味します。
- セキュリティ パッケージを使用すると、呼び出し元はシーケンス情報を指定し、受信側でそのシーケンス情報を提供できます。 これは、パッケージによって管理されるシーケンス情報に加えてです。
セキュリティ パッケージは、SECPKG_FLAG_DATAGRAM フラグを設定して、データグラム セマンティクスをサポートしていることを示します。