클래스: Mongo::Auth::Aws::CredentialsRetriever 비공개

상속:
객체
  • 객체
모두 표시
다음에 정의됨:
build/ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/credentials_retriever.rb

개요

이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

다양한 소스에서 Amazon Web Services 자격 증명을 검색합니다.

이 클래스는 다음에서 Amazon Web Services 자격 증명 검색을 제공합니다.

  • 전달된 사용자(URI 옵션 및 Ruby 옵션을 통해 클라이언트 에 전달된 자격 증명 수신)

  • AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN 환경 변수 (일반적으로 Amazon Web Services SDK 및 다양한 도구, Amazon Web Services Lambda 에서 사용됨)

  • AssumeRoleWithWebIdentity API 호출

  • EC2 메타데이터 엔드포인트

  • ECS 메타데이터 엔드포인트

위에 나열된 소스는 지정된 순서대로 참조됩니다. 세 가지 자격 증명 구성 요소(액세스 키 ID, 비밀 액세스 키 또는 세션 토큰) 중 하나를 포함하는 첫 번째 소스가 사용됩니다. 구성 요소가 지정된 경우 자격 증명 구성 요소는 유효한 설정하다 를 구성해야 합니다. 즉, 액세스 키 ID와 비밀 액세스 키를 항상 함께 제공해야 하며, 세션 토큰이 제공되는 경우 키 ID와 비밀 키도 제공해야 합니다. 소스가 부분 자격 증명 을 제공하는 경우 예외와 함께 자격 증명 검색이 실패합니다.

이후:

  • 2.0.0

상수 요약 접기

METADATA_TIMEOUT =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

메타데이터 작업의 제한 시간(초)입니다.

인증 사양은 10 초의 시간 제한을 제안하지만 엔드포인트가 기본적으로 로컬이라는 점을 감안할 때 시간 초과가 너무 길어 보입니다.

이후:

  • 2.0.0

5

인스턴스 속성 요약 접기

인스턴스 메서드 요약 접기

생성자 세부 정보

#initialize(user = nil, credentials_cache: CredentialsCache. 인스턴스) ⇒ CredentialsRetriever

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

CredentialsRetriever의 새 인스턴스 를 반환합니다.

매개변수:

  • 사용자 (Auth::User | nil) (기본값: nil)

    사용자 객체(제공된 경우)입니다.

  • credentials_cache (Auth::Aws::CredentialsCache) (기본값: CredentialsCache. 인스턴스)

    자격 증명 캐시.

이후:

  • 2.0.0



61
62
63
64
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/credentials_retriever.rb', 줄 61

def 초기화(사용자 = nil, credentials_cache: CredentialsCache.인스턴스)
  @user = 사용자
  @credentials_cache = credentials_cache
end

인스턴스 속성 세부 정보

#userAuth::User | nil (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

사용자 객체가 제공된 경우 사용자 객체 를 반환합니다.

반환합니다:

  • (Auth::User | nil)

    사용자 객체(제공된 경우)입니다.

이후:

  • 2.0.0



67
68
69
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/credentials_retriever.rb', 줄 67

def 사용자
  @user
end

인스턴스 메서드 세부 정보

자격 증명 # ⇒ Auth::Aws::Credentials

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

가능한 경우 유효한 자격 증명 설정하다 를 검색하거나 Auth::InvalidConfiguration을 발생시킵니다.

반환합니다:

다음을 발생시킵니다.

  • 소스에 잘못된 자격 증명 설정하다 이 포함된 경우 Auth::InvalidConfiguration .

  • 어떤 소스에서도 자격 증명 을 검색할 수 없는 경우 Auth::Aws::CredentialsNotFound.

이후:

  • 2.0.0



78
79
80
81
82
83
84
85
86
87
88
89
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/credentials_retriever.rb', 줄 78

def 자격 증명
  자격 증명 = credentials_from_user(사용자)
  반환 자격 증명 하지 않는 한 자격 증명.nil?

  자격 증명 = credentials_from_environment
  반환 자격 증명 하지 않는 한 자격 증명.nil?

  자격 증명 = @credentials_cache.가져오기 { get_credentials_from_endpoints }
  반환 자격 증명 하지 않는 한 자격 증명.nil?

  올리다 인증::AWS::CredentialsNotFound
end