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 |
---|---|
|
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 |