Compartilhar via


Função WTSCloudAuthConvertAssertionToSerializedUserCredential (wtsapi32.h)

Valida a asserção e calcula a credencial serializada da declaração.

Sintaxe

BOOL WINAPI WTSCloudAuthConvertAssertionToSerializedUserCredential(
  [in] WTS_CLOUD_AUTH_HANDLE cloudAuthHandle,
  [in] reads_bytes_(assertionLength) PCSTR assertion,
  [in] ULONG assertionLength,
  [in] z_ PCWSTR resourceId,
  [out] WTS_SERIALIZED_USER_CREDENTIAL** userCredential
);

Sintaxe

BOOL WTSCloudAuthConvertAssertionToSerializedUserCredential(
  [in]                   WTS_CLOUD_AUTH_HANDLE          cloudAuthHandle,
                         PCSTR                          assertion,
                         ULONG                          assertionLength,
                         PCWSTR                         resourceId,
                         WTS_SERIALIZED_USER_CREDENTIAL **userCredential
);

Parâmetros

[in] cloudAuthHandle

O identificador de autenticação de nuvem obtido chamando WTSCloudAuthOpen.

assertion

assertionLength

resourceId

userCredential

Valor de retorno

Se a função for bem-sucedida, o valor retornado será um valor diferente de zero. Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame a GetLastError função.

Código de erro Description
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_APNONCE_INVALID) O nonce do servidor expirou.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_BAD_DEVICE_ACCESS_TOKEN_FORMAT) O formato do token de acesso é inválido.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_ASSERTION_MALFORMED) O formato da declaração é inválido.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_INVALID_TENANT) O locatário da ID do Entra especificado no nonce do servidor ou na declaração é inválido.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_INVALID_DEVICE) O dispositivo de destino especificado no nonce do servidor ou na asserção é inválido.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_INVALID_ACCESS_TOKEN) O token de acesso é inválido.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_INVALID_BINDING_KEY_ID) A chave de associação especificada na asserção não corresponde à chave de associação especificada no token de acesso.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_CANT_FIND_ROOT_CERT) O certificado raiz associado à assinatura do token de acesso não pode ser encontrado.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_ASSERTION_INVALID) A URL do recurso na declaração não corresponde ao público especificado no token de acesso.
HRESULT_FROM_NT(STATUS_AAD_CLOUDAP_E_CALLER_MISMATCH) A ID de recurso especificada não corresponde ao público especificado no token de acesso.

Os códigos de erro STATUS_AAD_CLOUDAP_E_* são definidos em winnt.h e ntstatus.h.

Observações

O cliente constrói a asserção e o protocolo é responsável por transportar a declaração para o servidor. As credenciais serializadas de saída podem ser usadas WTSCloudAuthNetworkLogonWithSerializedCredentials para executar um logon de rede e uma autorização adicional. Posteriormente, eles também podem ser usados em IWRdsProtocolConnection2::GetSerializedUserCredentials que um protocolo pode fornecer credenciais serializadas para o serviço de Serviços de Área de Trabalho Remota que executa um logon interativo em seu nome.

Requirements

Requirement Value
Cliente mínimo suportado Windows, versão 26100
Header wtsapi32.h