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

こちらもご覧ください

DeleteSecurityContext

SspiAcceptSecurityContextAsync

SspiFreeAsyncContext

SspiInitializeSecurityContextAsync

SspiSetAsyncNotifyCallback

SSPI 関数