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 函数终止安全上下文并释放关联的资源。

当不再需要安全上下文时,调用方必须为安全上下文调用此函数。 如果安全上下文部分、不完整、拒绝或失败,则为 true。 成功删除安全上下文后,不允许进一步使用该安全上下文,并且句柄不再有效。

要求

要求
最低受支持的客户端 Windows 10版本 1607 [仅限内核模式驱动程序]
最低受支持的服务器 Windows Server 2016 [仅限内核模式驱动程序]
标头 sspi.h

另请参阅

DeleteSecurityContext

SspiAcceptSecurityContextAsync

SspiFreeAsyncContext

SspiInitializeSecurityContextAsync

SspiSetAsyncNotifyCallback

SSPI 函数