LSA_ADD_CREDENTIAL função de retorno de chamada (ntsecpkg.h)

[AddCredential está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. Os aplicativos devem usar a função LsaCallAuthenticationPackage com KerbAddExtraCredentialsMessage especificado como o tipo de mensagem. KerbAddExtraCredentialsMessage é um valor de enumeração KERB_PROTOCOL_MESSAGE_TYPE.]

Adiciona credenciais a uma sessão de logon. Essas credenciais podem ser referenciadas posteriormente por meio de uma chamada para a função GetCredentials .

Sintaxe

LSA_ADD_CREDENTIAL LsaAddCredential;

NTSTATUS LsaAddCredential(
  [in] PLUID LogonId,
  [in] ULONG AuthenticationPackage,
  [in] PLSA_STRING PrimaryKeyValue,
  [in] PLSA_STRING Credentials
)
{...}

Parâmetros

[in] LogonId

Um ponteiro para um LUID que contém a ID da sessão de logon à qual as credenciais devem ser adicionadas.

[in] AuthenticationPackage

A ID do pacote de autenticação do pacote de autenticação de chamada. Esse valor é recebido na chamada LsaApInitializePackage durante a inicialização da DLL.

[in] PrimaryKeyValue

Uma cadeia de caracteres que contém um valor que o pacote de autenticação precisará referenciar posteriormente como uma chave primária dos dados de credencial. Isso pode ser usado, por exemplo, para manter o nome do domínio ou servidor ao qual as credenciais estão relacionadas. O formato e o significado dessa cadeia de caracteres são específicos para o pacote de autenticação. Observe que o valor da cadeia de caracteres não precisa ser exclusivo, mesmo para a sessão de logon especificada. Por exemplo, pode haver duas senhas para o mesmo domínio, cada uma com as senhas armazenadas como credenciais e o nome de domínio armazenado como a chave primária.

[in] Credentials

Uma cadeia de caracteres que representa as credenciais do usuário. O formato e o significado dessa cadeia de caracteres são específicos para o pacote de autenticação.

Retornar valor

Se a função for bem-sucedida, a função retornará STATUS_SUCCESS.

Se a função falhar, ela retornará um código NTSTATUS , que pode ser o valor a seguir ou um dos valores retornados da função de política LSA.

Código de retorno Descrição
STATUS_NO_SUCH_LOGON_SESSION
Não foi possível encontrar a sessão de logon especificada.
 

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

Comentários

O corpo da cadeia de caracteres de credencial deve ser auto-relativo; ou seja, ele não deve conter ponteiros para a memória fora das credenciais. As credenciais são copiadas e quaisquer ponteiros fora das próprias credenciais não serão mais válidos na cópia. Em particular, as cadeias de caracteres mencionadas nas credenciais devem ter o cabeçalho UNICODE_STRING e o corpo colocados no buffer de credenciais. Os ponteiros para cadeias de caracteres no corpo das credenciais devem ser alterados para deslocamentos.

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 ntsecpkg.h

Confira também

Getcredentials

LSA_DISPATCH_TABLE

LSA_SECPKG_FUNCTION_TABLE