Compartilhar via


Função LsaRegisterLogonProcess (ntsecapi.h)

A função LsaRegisterLogonProcess estabelece uma conexão com o servidor LSA e verifica se o chamador é um aplicativo de logon.

Sintaxe

NTSTATUS LsaRegisterLogonProcess(
  [in]  PLSA_STRING           LogonProcessName,
  [out] PHANDLE               LsaHandle,
  [out] PLSA_OPERATIONAL_MODE SecurityMode
);

Parâmetros

[in] LogonProcessName

Ponteiro para uma estrutura LSA_STRING que identifica o aplicativo de logon. Esse deve ser um nome imprimível adequado para exibição aos administradores. Por exemplo, o aplicativo de logon do Windows pode usar o nome "User32LogonProcess". Esse nome é usado pela LSA durante a auditoria. LsaRegisterLogonProcess não marcar se o nome já está em uso.

Essa cadeia de caracteres não deve exceder 127 bytes.

[out] LsaHandle

Ponteiro que recebe um identificador usado em futuras chamadas de função de autenticação.

[out] SecurityMode

O valor retornado não é significativo e deve ser ignorado.

Retornar valor

Se a função for bem-sucedida, o valor retornado será STATUS_SUCCESS.

Se a função falhar, o valor retornado será um código NTSTATUS. Veja a seguir possíveis códigos de erro.

Código de retorno Descrição
STATUS_PORT_CONNECTION_REFUSED
O chamador não tem o privilégio SeTcbPrivilege, que é necessário para chamar essa função.

Você pode definir esse privilégio chamando LsaAddAccountRights.

STATUS_NAME_TOO_LONG
O nome do processo de logon especificado excede 127 bytes.
 

Para obter mais informações, consulte Valores retornados da função de política LSA.

A função LsaNtStatusToWinError converte um código NTSTATUS em um código de erro do Windows.

Comentários

Essa função deve ser chamada antes que um processo de logon possa usar qualquer outra função de autenticação de logon fornecida pela LSA.

A função LsaRegisterLogonProcess verifica se o aplicativo que está fazendo a chamada de função é um processo de logon verificando se ele tem o conjunto de privilégios SeTcbPrivilege. Ele também abre o processo do aplicativo para acesso PROCESS_DUP_HANDLE em antecipação a futuras chamadas de autenticação LSA. Para obter mais informações, consulte DuplicateHandle.

Quando terminar de usar a conexão com o servidor LSA, exclua o contexto do aplicativo de logon do chamador e feche a conexão chamando a função LsaDeregisterLogonProcess .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ntsecapi.h
Biblioteca Secur32.lib
DLL Secur32.dll

Confira também

LsaAddAccountRights

LsaConnectUntrusted

LsaDeregisterLogonProcess