LSA_DELETE_LOGON_SESSION función de devolución de llamada (ntsecpkg.h)

Limpia las sesiones de inicio de sesión creadas al determinar si la información de autenticación de un usuario es legítima.

Si se produce un error en la autenticación, el paquete de autenticación debe eliminar todas las sesiones de inicio de sesión relacionadas.

Sintaxis

LSA_DELETE_LOGON_SESSION LsaDeleteLogonSession;

NTSTATUS LsaDeleteLogonSession(
  [in] PLUID LogonId
)
{...}

Parámetros

[in] LogonId

Puntero a una estructura LUID que contiene el identificador de sesión de la sesión que se va a eliminar.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es STATUS_SUCCESS.

Si se produce un error en la función, el valor devuelto es un código NTSTATUS, que puede ser uno de los siguientes valores o uno de los valores devueltos de la función de directiva LSA.

Código devuelto Descripción
STATUS_BAD_LOGON_SESSION_STATE
La sesión de inicio de sesión especificada tiene un valor de recuento de referencias que impide que se elimine. Este es un problema grave, causado por el sistema operativo y el paquete de autenticación que creen que tienen autoridad sobre la sesión de inicio de sesión.
STATUS_NO_SUCH_LOGON_SESSION
No se encontró la sesión de inicio de sesión especificada.
 

La función LsaNtStatusToWinError convierte un código NTSTATUS en un código de error de Windows.

Comentarios

Dado que las sesiones de inicio de sesión usan memoria en el kernel, se deben eliminar las sesiones de inicio de sesión no utilizada o descartadas. Sin embargo, las sesiones de inicio de sesión no deben eliminarse después de que se haya devuelto un identificador de inicio de sesión para la sesión a la LSA. Una vez que se le haya dado un identificador de inicio de sesión (por ejemplo, como resultado de una llamada a LsaApLogonUser ), LSA asume que es responsable de la sesión de inicio de sesión y la eliminará cuando el sistema operativo ya no lo necesite. En este momento, LSA llama a LsaApLogonTerminated para notificar al paquete de autenticación que se ha eliminado la sesión.

En cambio, los paquetes de autenticación no se notifican cuando se elimina una sesión de inicio de sesión con DeleteLogonSession.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ntsecpkg.h

Consulte también

CreateLogonSession

LSA_DISPATCH_TABLE

LSA_SECPKG_FUNCTION_TABLE