IAM에서 OIDC(OpenID Connect) ID 공급자 생성 - AWS Identity and Access Management

IAM에서 OIDC(OpenID Connect) ID 공급자 생성

IAM OIDC 자격 증명 공급자는 IAM의 엔터티로서 Google이나 Salesforce와 같은 OpenID Connect(OIDC) 표준을 지원하는 외부 자격 증명 공급자(IdP) 서비스를 설명합니다. IAM OIDC 자격 증명 공급자는 OIDC 호환 IdP와 AWS 계정 간에 신뢰를 구축하려 할 때 사용합니다. 예를 들어 AWS 리소스에 액세스하는 데 필요한 모바일 앱이나 웹 애플리케이션을 개발하면서 사용자 지정 로그인 코드를 생성하거나 자신의 사용자 자격 증명을 관리하지 않을 때 유용합니다. 이 시나리오에 대한 자세한 내용은 OIDC 페더레이션를 참조하세요.

AWS Management Console, AWS Command Line Interface, Tools for Windows PowerShell 또는 IAM API 호출을 사용하여 IAM OIDC 자격 증명 공급자를 생성하고 관리할 수 있습니다.

IAM OIDC 자격 증명 공급자를 생성한 후 1개 이상의 IAM 역할을 생성해야 합니다. 역할은 AWS의 자격 증명으로서 자신만의 고유한 자격 증명이 없지만(사용자가 그러하듯이), 이 콘텍스트에서는 조직의 IdP에 의해 인증된 페더레이션 사용자에게 동적으로 할당됩니다. 그 역할은 조직의 IdP가 AWS에 액세스하기 위해 임시 보안 자격 증명을 요청할 수 있도록 허용합니다. 역할에 할당된 정책은 페더레이션 사용자가 AWS에서 하도록 허용된 것이 무엇인지 결정합니다. 서드 파티 자격 증명 공급자에 대한 역할을 생성하려면 서드 파티 자격 증명 공급자의 역할 만들기(연동) 섹션을 참조하세요.

중요

oidc-provider 리소스를 지원하는 작업에 대해 ID 기반 정책을 구성하는 경우. IAM은 지정된 경로를 포함한 전체 OIDC ID 공급자 URL을 평가합니다. OIDC ID 공급자 URL에 경로가 있는 경우 그 경로를 oidc-providerARN에 Resource 요소 값으로 포함해야 합니다. URL 도메인에 슬래시와 와일드카드(/*)를 추가할 수도 있고 URL 경로의 어느 지점에서든 와일드카드 문자(* 및?)를 사용할 수도 있습니다. 요청의 OIDC ID 공급자 URL이 정책의 Resource 요소에 설정된 값과 일치하지 않는 경우 요청은 실패합니다.

OIDC 공급자 생성 및 관리(콘솔)

다음 지침에 따라 AWS Management Console에서 IAM OIDC 자격 증명 공급자를 생성 및 관리합니다.

중요

Google, Facebook 또는 Amazon Cognito의 OIDC 자격 증명 공급자를 사용하는 경우 이 절차에 따라 IAM 자격 증명 공급자를 별도로 생성하지 마세요. 이러한 OIDC 자격 증명 공급자는 이미 AWS에 내장되어 있고 용도에 맞게 사용할 수 있습니다. 대신 단계에 따라 자격 증명 공급자의 새 역할을 생성합니다. 자세한 내용은 OpenID Connect 페더레이션을 위한 역할 생성(콘솔) 섹션을 참조하세요.

IAM OIDC 자격 증명 공급자를 생성하려면(콘솔)
  1. IAM OIDC 자격 증명 공급자를 생성하려면 먼저 애플리케이션을 IdP에 등록하여 클라이언트 ID를 받아야 합니다. 클라이언트 ID(사용자라고도 불림)는 앱을 IdP에 등록할 때 발급되는 고유의 앱 식별자입니다. 클라이언트 ID를 얻는 방법에 대한 자세한 정보는 해당 IdP에 대한 설명서를 참조하세요.

    참고

    AWS는 인증서 지문을 사용하여 IdP 서버 인증서를 검증하는 대신 신뢰할 수 있는 루트 인증 기관(CA) 라이브러리를 통해 일부 OIDC ID 공급자(IdP)와의 통신을 보호합니다. 이러한 경우 레거시 지문은 구성에 그대로 유지되지만 더 이상 검증에 사용되지 않습니다. Auth0, GitHub, GitLab, Google, Amazon S3 버킷을 사용하여 JSON 웹 키 집합(JWKS) 엔드포인트를 호스팅하는 IdP 등이 이러한 OIDC IdP에 포함됩니다.

  2. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  3. 탐색 창에서 [자격 증명 공급자(Identity providers)]를 선택한 다음 [공급자 추가(Add provider)]를 선택합니다.

  4. [공급자 구성(Configure provider)]에 대해 [OpenID Connect]를 선택합니다.

  5. Provider URL(공급자 URL)에서 IdP의 URL을 입력합니다. URL은 다음과 같은 제한을 준수해야 합니다.

    • URL은 대/소문자를 구분합니다.

    • URL은 https://로 시작해야 합니다.

    • URL은 포트 번호를 포함하지 않아야 합니다.

    • AWS 계정 내에서 각 IAM OIDC 자격 증명 공급자는 고유한 URL을 사용해야 합니다.

  6. [지문 가져오기(Get thumbprint)]를 선택하여 IdP의 서버 인증서를 확인합니다. 자세한 방법은 OpenID Connect ID 공급자에 대한 지문 얻기 섹션을 참조하세요.

    참고

    OIDC ID 제공업체의 인증서 체인은 도메인 또는 발급자 URL로 시작하고, 그다음으로 중간 인증서, 마지막으로는 루트 인증서여야 합니다. 인증서 체인 순서가 다른 경우 또는 중복되거나 추가 인증서가 포함된 경우 서명 불일치 오류가 발생하고 STS는 JSON 웹 토큰(JWT) 유효성 검사에 실패합니다. 서버에서 반환된 체인의 인증서 순서를 수정하여 오류를 해결하세요. 인증서 체인 표준에 대한 자세한 내용은 RFC 시리즈 웹 사이트에서 RFC 5246의 certificate_list를 참조하세요.

  7. 대상(Audience) 필드에 IdP를 등록하고 단계 1에서 받은 애플리케이션의 클라이언트 ID를 입력하면 AWS에게도 요청됩니다. IdP에 등록한 클라이언트 ID(사용자들이라고도 불림)가 더 있는 경우 나중에 공급자 세부 정보 페이지에서 추가할 수 있습니다.

  8. (선택 사항) 태그 추가(Add tags)에 키 값 페어를 추가하여 IdP를 식별하고 구성할 수 있습니다. 태그를 사용하여 AWS 리소스에 대한 액세스를 제어할 수도 있습니다. IAM OIDC 자격 증명 공급자 태깅에 대한 자세한 내용은 OpenID Connect(OIDC) 자격 증명 공급자 태깅 섹션을 참조하세요. 태그 추가를 선택합니다. 각 태그 키 값 페어의 값을 입력합니다.

  9. 제공한 정보를 확인합니다. 완료되면 [공급자 추가(Add provider)]를 선택합니다.

  10. 자격 증명 공급자에 IAM 역할을 할당하여 자격 증명 공급자가 관리하는 외부 사용자 자격 증명에 계정의 AWS 리소스에 대한 액세스 권한을 부여합니다. ID 연동을 위한 역할을 생성하는 방법에 대한 자세한 내용은 서드 파티 자격 증명 공급자의 역할 만들기(연동) 섹션을 참조하세요.

    참고

    역할 신뢰 정책에 사용되는 OIDC IdP는 이를 신뢰하는 역할과 동일한 계정에 있어야 합니다.

IAM OIDC 자격 증명 공급자에 대한 지문을 추가하거나 제거하려면(콘솔)
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 [자격 증명 공급자(Identity providers)]를 선택합니다. 그런 다음 업데이트할 IAM 자격 증명 공급자의 이름을 선택합니다.

  3. [지문(Thumbprints)] 섹션에서 [관리(Manage)]를 선택합니다. 새 지문 값을 입력하려면 [지문 추가(Add thumbprint)]를 선택합니다. 지문을 제거하려면 삭제할 지문 옆에 있는 [제거(Remove)]를 선택합니다.

    참고

    IAM OIDC 자격 증명 공급자마다 한 개 이상의 지문이 있어야 하며 최대 5개까지 가능합니다.

    작업을 마쳤으면 [변경 사항 저장(Save changes)]을 선택합니다.

IAM OIDC 자격 증명 공급자에 대한 대상을 추가하려면(콘솔)
  1. 탐색 창에서 자격 증명 공급자(Identity providers)를 선택한 다음 업데이트할 IAM 자격 증명 공급자의 이름을 선택합니다.

  2. [대상(Audiences)] 섹션에서 [작업(Actions)]을 선택하고 [대상 추가(Add audience)]를 선택합니다.

  3. IdP에 등록하고 단계 1에서 받은 애플리케이션의 클라이언트 ID를 입력하면 AWS로 요청이 전송됩니다. 그런 다음 [대상 추가(Add audience)]를 선택합니다.

    참고

    IAM OIDC 자격 증명 공급자마다 한 명 이상의 사용자가 있어야 하며 최대 100명까지 가능합니다.

IAM OIDC 자격 증명 공급자에 대한 대상을 제거하려면(콘솔)
  1. 탐색 창에서 자격 증명 공급자(Identity providers)를 선택한 다음 업데이트할 IAM 자격 증명 공급자의 이름을 선택합니다.

  2. [대상(Audiences)] 섹션에서 제거할 대상 옆에 있는 라디오 단추를 선택한 다음 [작업(Actions)]을 선택합니다.

  3. [대상 제거(Remove audience)]를 선택합니다. 새 창이 열립니다.

  4. 대상을 제거하면 해당 대상과 연동된 자격 증명에서 해당 대상에 연결된 역할을 수임할 수 없습니다. 창에서 경고를 읽고 필드에 remove라는 단어를 입력하여 대상 제거를 확인합니다.

  5. [제거(Remove)]를 선택하여 대상을 제거합니다.

IAM OIDC 자격 증명 공급자를 삭제하려면(콘솔)
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 [자격 증명 공급자(Identity providers)]를 선택합니다.

  3. 삭제할 IAM 자격 증명 공급자 옆의 확인란을 선택합니다. 새 창이 열립니다.

  4. 필드에 단어 delete를 입력하여 공급자 삭제를 확인합니다. 그런 다음 삭제를 선택합니다.

IAM OIDC 자격 증명 공급자 생성 및 관리(AWS CLI)

다음 AWS CLI 명령을 사용하여 IAM OIDC 자격 증명 공급자를 생성하고 관리할 수 있습니다.

IAM OIDC 자격 증명 공급자를 생성하려면(AWS CLI)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 명령을 실행합니다.

  2. 새 IAM OIDC 자격 증명 공급자를 생성하려면 다음 명령을 실행합니다.

기존 IAM OIDC 자격 증명 공급자의 서버 인증서 지문 목록을 업데이트하려면(AWS CLI)
기존 IAM OIDC 자격 증명 공급자를 태깅하려면(AWS CLI)
기존 IAM OIDC 자격 증명 공급자의 태그를 나열하려면(AWS CLI)
IAM OIDC 자격 증명 공급자에서 태그를 제거하려면(AWS CLI)
기존 IAM OIDC 자격 증명 공급자에서 클라이언트 ID를 추가하거나 제거하려면(AWS CLI)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 명령을 실행합니다.

  2. (선택 사항) IAM OIDC 자격 증명 공급자에 대한 자세한 정보를 보려면 다음 명령을 실행합니다.

  3. 기존 IAM OIDC 자격 증명 공급자에 새로운 클라이언트 ID를 추가하려면 다음 명령을 실행합니다.

  4. 기존 IAM OIDC 자격 증명 공급자에서 클라이언트를 제거하려면 다음 명령을 실행합니다.

IAM OIDC 자격 증명 공급자를 삭제하려면(AWS CLI)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 명령을 실행합니다.

  2. (선택 사항) IAM OIDC 자격 증명 공급자에 대한 자세한 정보를 보려면 다음 명령을 실행합니다.

  3. IAM OIDC 자격 증명 공급자를 삭제하려면 다음 명령을 실행합니다.

OIDC 자격 증명 공급자 생성 및 관리(AWS API)

다음 IAM API 명령을 사용하여 OIDC 공급자를 생성하고 관리할 수 있습니다.

IAM OIDC 자격 증명 공급자를 생성하려면(AWS API)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 작업을 호출합니다.

  2. 새로운 IAM OIDC 자격 증명 공급자를 생성하려면 다음 작업을 호출합니다.

기존 IAM OIDC 자격 증명 공급자의 서버 인증서 지문 목록을 업데이트하려면(AWS API)
기존 IAM OIDC 자격 증명 공급자를 태깅하려면(AWS API)
기존 IAM OIDC 자격 증명 공급자의 태그를 나열하려면(AWS API)
기존 IAM OIDC 자격 증명 공급자에서 태그를 제거하려면(AWS API)
  • 기존 IAM OIDC 자격 증명 공급자에서 태그를 제거하려면 다음 작업을 호출합니다.

기존 IAM OIDC 자격 증명 공급자에서 클라이언트 ID를 추가하거나 제거하려면(AWS API)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 작업을 호출합니다.

  2. (선택 사항) IAM OIDC 자격 증명 공급자에 대한 자세한 정보를 보려면 다음 작업을 호출합니다.

  3. 기존 IAM OIDC 자격 증명 공급자에 새로운 클라이언트 ID를 추가하려면 다음 작업을 호출합니다.

  4. 기존 IAM OIDC 자격 증명 공급자에서 클라이언트 ID를 제거하려면 다음 작업을 호출합니다.

IAM OIDC 자격 증명 공급자를 삭제하려면(AWS API)
  1. (선택 사항) AWS 계정의 전체 IAM OIDC 자격 증명 공급자 목록을 가져오려면 다음 작업을 호출합니다.

  2. (선택 사항) IAM OIDC 자격 증명 공급자에 대한 자세한 정보를 보려면 다음 작업을 호출합니다.

  3. IAM OIDC 자격 증명 공급자를 삭제하려면 다음 작업을 호출합니다.