Categorias:

Funções do sistema (Informações do sistema)

SYSTEM$GET_LOGIN_FAILURE_DETAILS

Retorna um objeto JSON que representa uma tentativa de login mal sucedida associada a OAuth externo, SAML ou autenticação de par de chaves. O objeto JSON contém o erro associado à tentativa de login com falha.

Sintaxe

SYSTEM$GET_LOGIN_FAILURE_DETAILS('<uuid>')
Copy

Argumentos

uuid

Uma cadeia de caracteres representando um UUID. O UUID aparece após a mensagem de erro que é retornada de um evento de login falhado associado a External OAuth, SAML ou autenticação de par de chaves.

Retornos

Retorna os seguintes elementos em um objeto JSON:

Chave

Tipo de dados

Descrição do valor

clientIP

STRING

O endereço IP de onde se originou a solicitação de login com falha. Por exemplo, "10.211.55.1".

clientType

STRING

O software do cliente relatado pelo cliente. Por exemplo, "JDBC_DRIVER". Este valor não é verificado. Se o cliente não informar este valor, então este valor será "OTHER".

clientVersion

STRING

A versão do software do cliente relatada pelo cliente. Por exemplo, "2.9.0". Este valor não é verificado. Se o cliente não informar este valor, este valor será null.

username

STRING

O nome de usuário associado ao evento de login com falha. Se o sistema não puder encontrar o nome de usuário, ou se o erro ocorreu antes de o sistema encontrar o nome de usuário, então este valor será null.

errorCode

STRING

O erro associado ao evento de login com falha. Para uma descrição do erro, consulte Erros de OAuth externo, Erros de SAML ou Erros de token JWT. Se o erro for OVERFLOW_FAILURE_EVENTS_ELIDED, então o número de tentativas de login com falha será muito alto.

timestamp

NUMBER

A data e a hora, no formato de carimbo de data/hora Unix, em que ocorreu o evento de login com falha.

Notas de uso

Somente administradores com um privilégio MONITOR atribuído a sua função podem usar esta função.

Descrições de erro

Esta seção fornece descrições de erros retornados pela função SYSTEM$GET_LOGIN_FAILURE_DETAILS.

Erros de OAuth externo

Erro

Descrição

EXTERNAL_OAUTH_INVALID_SIGNATURE

Algoritmo de assinatura inválido ou problema ao validar assinatura.

EXTERNAL_OAUTH_MISSING_ISSUER

Não é possível extrair o emissor (uma declaração iss) do token de acesso.

EXTERNAL_OAUTH_JWS_INVALID_TYPE

Tipo inválido de token de acesso.

EXTERNAL_OAUTH_JWS_INVALID_FORMAT

Token de acesso malformado

EXTERNAL_OAUTH_ACCESS_TOKEN_ISSUER_NOT_FOUND

Não é possível encontrar a integração de segurança associada ao emissor.

EXTERNAL_OAUTH_ACCESS_TOKEN_EXPIRED

O token de acesso expirou.

EXTERNAL_OAUTH_MISSING_AUDIENCE

Não é possível extrair o público (uma declaração aud) do token de acesso.

EXTERNAL_OAUTH_AUDIENCE_VALIDATION_FAILED

O público do token de acesso não corresponde a nenhum dos públicos definidos na integração de segurança.

EXTERNAL_OAUTH_ACCESS_TOKEN_ISSUER_NOT_ENABLED

A integração de segurança está desativada.

EXTERNAL_OAUTH_JWS_CANT_RETRIEVE_PUBLIC_KEY

Não é possível recuperar a chave pública do servidor de autorização para validar o token de acesso.

EXTERNAL_OAUTH_USER_CLAIM_MISSING

Não é possível extrair a declaração de mapeamento do usuário a partir do token de acesso.

EXTERNAL_OAUTH_ACCESS_TOKEN_NOT_YET_VALID

O token ainda não é válido. Um carimbo de data/hora com uma declaração iat ou nbf indica que o símbolo é válido no futuro.

Erros de SAML

Código de erro

Erro

Descrição

390133

SAML_RESPONSE_INVALID

A resposta SAML é inválida por uma razão não especificada, embora muito provavelmente seja malformada (também é usado se houver um erro na análise).

390165

SAML_RESPONSE_INVALID_SIGNATURE

A resposta SAML contém uma Assinatura inválida.

390166

SAML_RESPONSE_INVALID_DIGEST_METHOD

A resposta SAML contém um atributo “DigestMethod“ inválido ou o omite completamente.

390167

SAML_RESPONSE_INVALID_SIGNATURE_METHOD

A resposta SAML contém um “SignatureMethod“ inválido ou o omite completamente.

390168

SAML_RESPONSE_INVALID_DESTINATION

O atributo “Destination” na resposta SAML não corresponde a uma URL de destino válida na conta.

390169

SAML_RESPONSE_INVALID_AUDIENCE

A resposta SAML não contém exatamente um público, ou a URL do público não corresponde ao que esperamos que ela seja.

390170

SAML_RESPONSE_INVALID_MISSING_INRESPONSETO

Falta o atributo “InResponseTo“ na declaração SAML.

390171

SAML_RESPONSE_INVALID_RECIPIENT_MISMATCH

O atributo “Recipient” não corresponde a uma URL de destino válida.

390172

SAML_RESPONSE_INVALID_NOTONORAFTER_VALIDATION

Isso normalmente indica que o tempo em que a declaração SAML é válida expirou.

390173

SAML_RESPONSE_INVALID_NOTBEFORE_VALIDATION

Isso normalmente indica que o tempo em que a declaração SAML é válida ainda não chegou.

390174

SAML_RESPONSE_INVALID_USERNAMES_MISMATCH

Os nomes de login não coincidem durante a reautenticação.

390175

SAML_RESPONSE_INVALID_SESSIONID_MISSING

Durante a reautenticação, não foi possível encontrar uma sessão correspondente ao usuário.

390176

SAML_RESPONSE_INVALID_ACCOUNTS_MISMATCH

Durante a reautenticação, verificou-se que os nomes das contas não correspondiam.

390177

SAML_RESPONSE_INVALID_BAD_CERT

O certificado x.509 contido na resposta SAML é malformado ou não corresponde ao certificado esperado.

390178

SAML_RESPONSE_INVALID_PROOF_KEY_MISMATCH

As chaves de prova não correspondem com relação à ID do pedido de autenticação.

390179

SAML_RESPONSE_INVALID_INTEGRATION_MISCONFIGURATION

A configuração SAML IdP é inválida.

390180

SAML_RESPONSE_INVALID_REQUEST_PAYLOAD

Durante a autenticação, é usada uma carga útil inválida ou uma cadeia de conexão OAuth federada inválida.

390181

SAML_RESPONSE_INVALID_MISSING_SUBJECT_CONFIRMATION_BEARER

Falta a confirmação do assunto com o método Bearer, e ela não pode ser validada.

390182

SAML_RESPONSE_INVALID_MISSING_SUBJECT_CONFIRMATION_DATA

Faltam os dados de confirmação do assunto na declaração.

390183

SAML_RESPONSE_INVALID_CONDITIONS

A declaração SAML não é válida por uma razão diferente das condições precedentes nesta tabela.

390184

SAML_RESPONSE_INVALID_ISSUER

A resposta SAML continha um valor do emissor/entityID diferente daquele configurado no SAML IDP.

Erros de token JWT

Os erros a seguir estão associados ao token JWT usado para autenticação de par de chaves.

Código de erro

Erro

Descrição

390144

JWT_TOKEN_INVALID

Há um problema geral com o token JWT. Para possíveis soluções, consulte Erros e soluções comuns.

394300

JWT_TOKEN_INVALID_USER_IN_ISSUER

O nome de usuário especificado no emissor não existe na conta Snowflake. Para possíveis soluções, consulte Erros e soluções comuns.

394301

JWT_TOKEN_MISSING_ISSUE_OR_EXPIRATION_TIME

O token JWT não contém uma hora de emissão ou de expiração.

394302

JWT_TOKEN_INVALID_ISSUE_TIME

O token JWT foi recebido pelo Snowflake mais de 60 segundos após a hora de emissão. Para possíveis soluções, consulte Erros e soluções comuns.

394303

JWT_TOKEN_INVALID_EXPIRATION_TIME

O token JWT expirou.

394304

JWT_TOKEN_INVALID_PUBLIC_KEY_FINGERPRINT_MISMATCH

Há uma incompatibilidade entre a impressão digital da chave pública especificada no emissor e aquela armazenada para o usuário no Snowflake. Para possíveis soluções, consulte Erros e soluções comuns.

394305

JWT_TOKEN_INVALID_ALGORITHM

O token JWT não foi assinado com o algoritmo RS256.

394306

JWT_TOKEN_INVALID_SIGNATURE

Snowflake não conseguiu verificar a assinatura fornecida pelo token JWT. É possível que JWT tenha sido assinado com uma chave privada que não está emparelhada com a chave pública fornecida. Também é possível que a assinatura JWT esteja corrompida ou tenha sido modificada.

Exemplos

O exemplo a seguir ensina como usar a função SYSTEM$GET_LOGIN_FAILURE_DETAILS com um UUID de uma tentativa de login com falha associada a External OAuth, SAML ou autenticação de par de chaves:

  1. Encontre o UUID na mensagem de erro:

    Invalid  OAuth access token. [0ce9eb56-821d-4ca9-a774-04ae89a0cf5a]
    
    Copy
  2. Use o UUID como argumento para a função SYSTEM$GET_LOGIN_FAILURE_DETAILS e extraia o erro usando a função JSON_EXTRACT_PATH_TEXT:

    SELECT JSON_EXTRACT_PATH_TEXT(SYSTEM$GET_LOGIN_FAILURE_DETAILS('0ce9eb56-821d-4ca9-a774-04ae89a0cf5a'), 'errorCode');
    
    Copy
  3. Encontre a descrição do erro nas tabelas Erros de OAuth externo ou Erros de SAML.