Compartir a través de


Función WSManPluginAuthzUserComplete (wsman.h)

Se llama desde el punto de entrada del complemento WSManPluginAuthzUser e informa de una autorización de conexión de usuario correcta o errónea.

Sintaxis

DWORD WSManPluginAuthzUserComplete(
  [in]           WSMAN_SENDER_DETAILS *senderDetails,
  [in]           DWORD                flags,
  [in, optional] PVOID                userAuthorizationContext,
  [in, optional] HANDLE               impersonationToken,
  [in]           BOOL                 userIsAdministrator,
  [in]           DWORD                errorCode,
  [in, optional] PCWSTR               extendedErrorInformation
);

Parámetros

[in] senderDetails

Puntero a la estructura WSMAN_SENDER_DETAILS que se pasó a la llamada de complemento WSManPluginAuthzUser .

[in] flags

Reservado para uso futuro. Debe establecerse en cero.

[in, optional] userAuthorizationContext

Especifica un contexto definido por el complemento que se usa para ayudar a realizar un seguimiento de la información de contexto del usuario. Este contexto se puede devolver a varias llamadas, a esta llamada o a una llamada de operación. El complemento administra el recuento de referencias para todas las llamadas. Si el registro de usuario agota el tiempo de espera o se requiere la nueva autorización, la infraestructura de WinRM llama a WSManPluginAuthzReleaseContext.

[in, optional] impersonationToken

Especifica la identidad del usuario. Este parámetro es el clientToken que se pasó a senderDetails. Si el complemento cambia el contexto del usuario, se debe devolver un nuevo token de suplantación.

Nota Este token se libera una vez completada la operación.
 

[in] userIsAdministrator

Establézcalo en TRUE si el usuario es administrador. De lo contrario, este parámetro es FALSE.

[in] errorCode

Informa de una autorización correcta o errónea. Si la autorización se realiza correctamente, el código debe ser ERROR_SUCCESS. Si el usuario no está autorizado para realizar la operación, el error debe ser ERROR_ACCESS_DENIED. Si se produce un error por cualquier otro motivo, se debe usar un código de error adecuado. Cualquier error de esta llamada se enviará como un paquete de error SOAP.

[in, optional] extendedErrorInformation

Especifica un documento XML que contiene cualquier información adicional de error que se debe notificar al cliente. Este parámetro se omite si errorCode está NO_ERROR. El lenguaje de la interfaz de usuario del subproceso debe usarse para la localización.

Valor devuelto

El método devuelve ERROR_SUCCESS si se realizó correctamente; de lo contrario, devuelve ERROR_INVALID_PARAMETER. Si se devuelve ERROR_INVALID_PARAMETER , el parámetro senderDetails era NULL o el parámetro flags no era cero.

Comentarios

Si el token de suplantación pasado a senderDetails no es la identidad con la que se debe realizar la operación, o si no hay ningún token de suplantación disponible y el complemento especifica una nueva identidad para llevar a cabo la solicitud, el complemento debe devolver la nueva suplantaciónToken que la infraestructura de WSMan usará para suplantar al cliente antes de llamar al complemento de operación. Si se proporciona un token de suplantación en senderDetails y el complemento quiere llevar a cabo la operación en esa identidad, el complemento debe copiar el token de suplantación de senderDetails en el parámetro impersonationToken . Si el complemento quiere llevar a cabo la solicitud en el contexto del proceso de host de Internet Information Services (IIS), la suplantaciónToken debe ser NULL. Si la suplantaciónToken es NULL, el subproceso suplantará el token de proceso antes de llamar al complemento de operación.

Si el parámetro userIsAdministrator está establecido en TRUE, el usuario puede ver y eliminar shells propiedad de distintos usuarios.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7
Servidor mínimo compatible Windows Server 2008 R2
Plataforma de destino Windows
Encabezado wsman.h
Library WsmSvc.lib
Archivo DLL WsmSvc.dll
Redistribuible Windows Management Framework en Windows Server 2008 con SP2 y Windows Vista con SP2