SspiDeleteSecurityContextAsync 関数 (sspi.h)
SspiDeleteSecurityContextAsync 関数は、SspiInitializeSecurityContextAsync 関数または SspiAcceptSecurityContextAsync 関数の以前の呼び出しによって開始された、指定されたセキュリティ コンテキストに関連付けられているローカル データ構造を削除します。
構文
SECURITY_STATUS SspiDeleteSecurityContextAsync(
SspiAsyncContext *AsyncContext,
PCtxtHandle phContext
);
パラメーター
AsyncContext
非同期呼び出しコンテキスト。
phContext
削除するセキュリティ コンテキストのハンドル。
戻り値
セキュリティ コンテキストを削除する非同期要求が正常にキューに登録された場合は、 SEC_E_OK を返します。 それ以外の場合は、キューに入ろうとして生成されたエラーを返します。 操作の状態を取得するには、 SspiGetAsyncCallStatus を使用します。
SspiGetAsyncCallStatus は、完了 時にSEC_E_OK を返します。 それ以外の場合は、呼び出しがまだ進行中の場合、 または 次のいずれかのエラー コードがSEC_I_ASYNC_CALL_PENDING返される可能性があります。
リターン コード |
説明 |
---|---|
SEC_E_INVALID_HANDLE | 関数に渡されたハンドルが無効です。 |
注釈
非同期呼び出しの完了時に、呼び出し元は、新しい SspiAsyncContext のコールバックを設定しないようにするか、または null パラメーターを指定して SspiSetAsyncNotifyCallback を使用してコールバックを削除することで、通知の受信をオプトアウトすることを選択できます。 オプトアウトする場合、呼び出し元は SspiDeleteSecurityContextAsync を呼び出した直後に SspiFreeAsyncContext を使用してコンテキストを解放する必要があります。ただし、コンテキストは再利用を目的としていません。
SspiDeleteSecurityContextAsync 関数は、セキュリティ コンテキストを終了し、関連付けられているリソースを解放します。
セキュリティ コンテキストが不要になった場合、呼び出し元はセキュリティ コンテキストに対してこの関数を呼び出す必要があります。 これは、セキュリティ コンテキストが部分的、不完全、拒否、または失敗した場合に当てはまります。 セキュリティ コンテキストが正常に削除されると、そのセキュリティ コンテキストをさらに使用することは許可されず、ハンドルは無効になります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10バージョン 1607 [カーネル モード ドライバーのみ] |
サポートされている最小のサーバー | Windows Server 2016 [カーネル モード ドライバーのみ] |
Header | sspi.h |
こちらもご覧ください
SspiAcceptSecurityContextAsync