SYSTEM$GET_LOGIN_FAILURE_DETAILS

SYSTEM$GET_LOGIN_FAILURE_DETAILS

외부 OAuth, SAML 또는 키 쌍 인증과 연관된 실패한 로그인 시도를 나타내는 JSON 객체를 반환해요. JSON 객체에는 실패한 로그인 시도와 연관된 오류가 포함돼요.

출처: Snowflake SYSTEM$GET_LOGIN_FAILURE_DETAILS 함수 문서

본문

구문 (Syntax)

SYSTEM$GET_LOGIN_FAILURE_DETAILS('<uuid>')

인자 (Arguments)

  • uuid — UUID를 나타내는 문자열이에요. UUID는 외부 OAuth, SAML 또는 키 쌍 인증과 연관된 실패한 로그인 이벤트에서 반환된 오류 메시지 뒤에 나타나요.

반환 값 (Returns)

JSON 객체에서 다음 요소를 반환해요.

키 데이터 타입 값 설명
clientIP STRING 실패한 로그인 요청이 발생한 IP 주소예요. 예: "10.211.55.1".
clientType STRING 클라이언트가 보고한 클라이언트 소프트웨어예요. 예: "JDBC_DRIVER". 이 값은 검증되지 않아요. 클라이언트가 이 값을 보고하지 않으면 값은 "OTHER"예요.
clientVersion STRING 클라이언트가 보고한 클라이언트 소프트웨어 버전이에요. 예: "2.9.0". 이 값은 검증되지 않아요. 클라이언트가 이 값을 보고하지 않으면 값은 null이에요.
username STRING 실패한 로그인 이벤트와 연관된 사용자 이름이에요. 시스템이 사용자 이름을 찾을 수 없거나 시스템이 사용자 이름을 찾기 전에 오류가 발생하면 값은 null이에요.
errorCode STRING 실패한 로그인 이벤트와 연관된 오류예요. 오류에 대한 설명은 외부 OAuth 오류, SAML 오류 또는 JWT 토큰 오류를 참고하세요. 오류가 OVERFLOW_FAILURE_EVENTS_ELIDED이면 실패한 로그인 시도 횟수가 너무 많은 거예요.
timestamp NUMBER 실패한 로그인 이벤트가 발생한 날짜와 시간(Unix 타임스탬프 형식)이에요.
errorDetails ARRAY 실패한 로그인 이벤트에 대한 상세한 컨텍스트를 제공하는 문자열의 JSON 배열이에요. 예: ["Audience mismatch: expected 'https://account.snowflakecomputing.com', got 'https://other.example.com'"]. 사용 가능한 상세 오류 정보가 없으면 값은 null이에요.

사용 참고 (Usage Notes)

역할에 MONITOR 권한이 할당된 관리자만 이 함수를 사용할 수 있어요.

오류 설명 (Error Descriptions)

이 섹션은 SYSTEM$GET_LOGIN_FAILURE_DETAILS 함수가 반환한 오류에 대한 설명을 제공해요.

외부 OAuth 오류 (External OAuth Errors)

오류 설명
EXTERNAL_OAUTH_INVALID_SIGNATURE 서명 알고리즘이 잘못되었거나 서명 검증에 문제가 있어요.
EXTERNAL_OAUTH_MISSING_ISSUER 액세스 토큰에서 발급자(iss 클레임)를 추출할 수 없어요.
EXTERNAL_OAUTH_JWS_INVALID_TYPE 액세스 토큰의 유형이 잘못되었어요.
EXTERNAL_OAUTH_JWS_INVALID_FORMAT 액세스 토큰 형식이 잘못되었어요.
EXTERNAL_OAUTH_ACCESS_TOKEN_ISSUER_NOT_FOUND 발급자와 연관된 보안 통합을 찾을 수 없어요.
EXTERNAL_OAUTH_ACCESS_TOKEN_EXPIRED 액세스 토큰이 만료되었어요.
EXTERNAL_OAUTH_MISSING_AUDIENCE 액세스 토큰에서 대상(aud 클레임)을 추출할 수 없어요.
EXTERNAL_OAUTH_AUDIENCE_VALIDATION_FAILED 액세스 토큰의 대상이 보안 통합에 정의된 대상 중 어느 것과도 일치하지 않아요.
EXTERNAL_OAUTH_ACCESS_TOKEN_ISSUER_NOT_ENABLED 보안 통합이 비활성화되었어요.
EXTERNAL_OAUTH_JWS_CANT_RETRIEVE_PUBLIC_KEY 액세스 토큰을 검증하기 위해 인증 서버에서 공개 키를 검색할 수 없어요.
EXTERNAL_OAUTH_USER_CLAIM_MISSING 액세스 토큰에서 사용자 매핑 클레임을 추출할 수 없어요.
EXTERNAL_OAUTH_ACCESS_TOKEN_NOT_YET_VALID 토큰이 아직 유효하지 않아요. iat 또는 nbf 클레임이 있는 타임스탬프는 토큰이 미래에 유효함을 나타내요.

SAML 오류 (SAML Errors)

오류 코드 오류 설명
390133 SAML_RESPONSE_INVALID SAML 응답이 지정되지 않은 이유로 잘못되었는데, 대부분 형식이 잘못된 경우예요(파싱 오류가 있는 경우에도 사용됨).
390165 SAML_RESPONSE_INVALID_SIGNATURE SAML 응답에 잘못된 서명(Signature)이 포함되어 있어요.
390166 SAML_RESPONSE_INVALID_DIGEST_METHOD SAML 응답에 잘못된 “DigestMethod” 속성이 포함되어 있거나 이를 완전히 생략했어요.
390167 SAML_RESPONSE_INVALID_SIGNATURE_METHOD SAML 응답에 잘못된 “SignatureMethod”가 포함되어 있거나 이를 완전히 생략했어요.
390168 SAML_RESPONSE_INVALID_DESTINATION SAML 응답의 “Destination” 속성이 계정의 유효한 대상 URL과 일치하지 않아요.
390169 SAML_RESPONSE_INVALID_AUDIENCE SAML 응답에 대상이 정확히 하나 포함되어 있지 않거나 대상 URL이 예상한 대상 URL과 일치하지 않아요.
390170 SAML_RESPONSE_INVALID_MISSING_INRESPONSETO SAML 어설션에 “InResponseTo” 속성이 없어요.
390171 SAML_RESPONSE_INVALID_RECIPIENT_MISMATCH “Recipient” 속성이 유효한 대상 URL과 일치하지 않아요.
390172 SAML_RESPONSE_INVALID_NOTONORAFTER_VALIDATION 일반적으로 SAML 어설션이 유효한 시간이 만료되었음을 나타내요.
390173 SAML_RESPONSE_INVALID_NOTBEFORE_VALIDATION 일반적으로 SAML 어션이 유효한 시간이 아직 시작되지 않았음을 나타내요.
390174 SAML_RESPONSE_INVALID_USERNAMES_MISMATCH 재인증 중 로그인 이름이 일치하지 않아요.
390175 SAML_RESPONSE_INVALID_SESSIONID_MISSING 재인증 중 사용자에 해당하는 세션을 찾을 수 없었어요.
390176 SAML_RESPONSE_INVALID_ACCOUNTS_MISMATCH 재인증 중 계정 이름이 일치하지 않는 것으로 확인되었어요.
390177 SAML_RESPONSE_INVALID_BAD_CERT SAML 응답에 포함된 x.509 인증서가 형식이 잘못되었거나 예상 인증서와 일치하지 않아요.
390178 SAML_RESPONSE_INVALID_PROOF_KEY_MISMATCH 인증 요청 ID와 관련하여 증명 키가 일치하지 않아요.
390179 SAML_RESPONSE_INVALID_INTEGRATION_MISCONFIGURATION SAML IdP 구성이 잘못되었어요.
390180 SAML_RESPONSE_INVALID_REQUEST_PAYLOAD 인증 중 잘못된 페이로드를 사용하거나 잘못된 페더레이션 OAuth 연결 문자열을 사용했어요.
390181 SAML_RESPONSE_INVALID_MISSING_SUBJECT_CONFIRMATION_BEARER Bearer 방식의 Subject 확인이 없어 검증할 수 없어요.
390182 SAML_RESPONSE_INVALID_MISSING_SUBJECT_CONFIRMATION_DATA 어설션에 Subject 확인 데이터가 없어요.
390183 SAML_RESPONSE_INVALID_CONDITIONS 이 표의 앞선 조건과 다른 이유로 SAML 어설션이 유효하지 않아요.
390184 SAML_RESPONSE_INVALID_ISSUER SAML 응답에 SAML IDP 구성에 구성된 것과 다른 발급자/entityID 값이 포함되어 있어요.

JWT 토큰 오류 (JWT Token Errors)

다음 오류는 키 쌍 인증에 사용되는 JWT 토큰과 연관돼요.

오류 코드 오류 설명
394307 JWT_TOKEN_ACCOUNT_MISMATCH 토큰에서 얻은 Snowflake 계정이 요청 URL의 계정과 같지 않아요.
390144 JWT_TOKEN_INVALID JWT 토큰에 일반적인 문제가 있어요. 가능한 해결책은 일반적인 오류 및 해결책을 참고하세요.
394300 JWT_TOKEN_INVALID_USER_IN_ISSUER 발급자에 지정된 사용자 이름이 Snowflake 계정에 존재하지 않아요. 가능한 해결책은 일반적인 오류 및 해결책을 참고하세요.
394301 JWT_TOKEN_MISSING_ISSUE_OR_EXPIRATION_TIME JWT 토큰에 발급 시간이나 만료 시간이 포함되어 있지 않아요.
394302 JWT_TOKEN_INVALID_ISSUE_TIME JWT 토큰이 발급 시간 후 60초가 지나서 Snowflake에 수신되었어요. 가능한 해결책은 일반적인 오류 및 해결책을 참고하세요.
394303 JWT_TOKEN_INVALID_EXPIRATION_TIME JWT 토큰이 만료되었어요.
394304 JWT_TOKEN_INVALID_PUBLIC_KEY_FINGERPRINT_MISMATCH 발급자에 지정된 공개 키 지문과 Snowflake의 사용자에 대해 저장된 지문 사이에 불일치가 있어요. 가능한 해결책은 일반적인 오류 및 해결책을 참고하세요.
394305 JWT_TOKEN_INVALID_ALGORITHM JWT 토큰이 RS256 알고리즘으로 서명되지 않았어요.
394306 JWT_TOKEN_INVALID_SIGNATURE Snowflake가 JWT 토큰이 제공한 서명을 확인할 수 없었어요. JWT가 제공된 공개 키와 짝지어지지 않은 개인 키로 서명되었을 수 있어요. JWT 서명이 손상되었거나 수정되었을 수도 있어요.

예제 (Examples)

다음 예제는 외부 OAuth, SAML 또는 키 쌍 인증과 연관된 실패한 로그인 시도의 UUID와 함께 SYSTEM$GET_LOGIN_FAILURE_DETAILS 함수를 사용하는 방법을 알려줘요.

  1. 오류 메시지에서 UUID를 찾아요:
    Invalid  OAuth access token. [0ce9eb56-821d-4ca9-a774-04ae89a0cf5a]
    
  2. UUID를 SYSTEM$GET_LOGIN_FAILURE_DETAILS 함수의 인자로 사용하고 JSON_EXTRACT_PATH_TEXT 함수로 오류를 추출해요:
    SELECT JSON_EXTRACT_PATH_TEXT(SYSTEM$GET_LOGIN_FAILURE_DETAILS('0ce9eb56-821d-4ca9-a774-04ae89a0cf5a'), 'errorCode');
    
  3. 외부 OAuth 오류 또는 SAML 오류 표에서 오류 설명을 찾아요.

더 알아보기