IAM 아이덴티티 센터 보안 인증 공급자 - AWS SDKs및 도구

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

IAM 아이덴티티 센터 보안 인증 공급자

이 인증 메커니즘은 AWS IAM Identity Center 코드에 대한 싱글 사인온 (SSO) 액세스를 얻는 데 AWS 서비스 사용됩니다.

참고

AWS SDK API 설명서에서는 IAM ID 센터 자격 증명 공급자를 SSO 자격 증명 공급자라고 합니다.

IAM Identity Center를 활성화한 후에는 공유 파일의 설정에 대한 프로필을 정의합니다. AWS config 이 프로파일은 IAM ID 센터 액세스 포털에 연결하는 데 사용됩니다. 사용자가 IAM Identity Center에서 성공적으로 인증하면 포털은 해당 사용자와 관련된 IAM 역할에 대한 단기 보안 인증을 반환합니다. SDK가 구성에서 임시 자격 증명을 가져와 AWS 서비스 요청에 사용하는 방법을 알아보려면 을 참조하십시오. IAM Identity Center 인증 이해하기

config 파일을 통해 IAM ID 센터를 구성하는 두 가지 방법이 있습니다.

  • SSO 토큰 공급자 구성 (권장) — 세션 기간 연장.

  • 새로 고칠 수 없는 레거시 구성 - 고정된 8시간 세션을 사용합니다.

두 구성 모두 세션이 만료되면 다시 로그인해야 합니다.

사용자 지정 세션 기간을 설정하려면 SSO 토큰 공급자 구성을 사용해야 합니다.

다음 두 안내서에는 IAM Identity Center에 대한 추가 정보가 포함되어 있습니다.

필수 조건

먼저 IAM Identity Center를 활성화해야 합니다. IAM Identity Center에 대한 자세한 내용은 AWS IAM Identity Center 사용 설명서시작하기를 참조하십시오.

또는 이 안내서의 IAM Identity Center 인증 지침을 따르십시오. 이 지침은 IAM Identity Center를 활성화하는 것부터 여기에 나오는 필수 공유 config 파일 구성을 완료하는 것까지 완전한 지침을 제공합니다.

SSO 토큰 공급자 구성

참고

를 사용하여 이 구성을 자동으로 AWS CLI 생성하려면 aws configure sso 마법사를 사용하여 프로필 구성을 참조하십시오 AWS CLI.

SSO 토큰 공급자 구성을 사용하면 AWS SDK 또는 도구가 연장된 세션 기간까지 세션을 자동으로 새로 고칩니다. 세션 기간 및 최대 기간에 대한 자세한 내용은 사용 설명서의 AWS 액세스 포털 및 IAM Identity Center 통합 애플리케이션의 세션 기간 구성을 참조하십시오.AWS IAM Identity Center

config 파일의 sso-session 섹션은 SSO 액세스 토큰을 획득하기 위한 구성 변수를 그룹화하는 데 사용되며, 이 구성 변수를 사용하여 자격 증명을 획득할 수 있습니다. AWS config 파일 내 섹션 형식 지정에 대한 자세한 내용은 구성 파일 형식 섹션을 참조하십시오.

sso-session 섹션을 정의하고 프로파일에 연결합니다. sso-session 섹션 내에서 sso_regionsso_start_url을 설정해야 합니다. 일반적으로 SDK가 자격 증명을 요청할 수 있도록 profile 섹션에서 sso_role_name 설정해야 합니다. sso_account_id AWS

참고

SDK 및 도구가 이 구성을 사용하여 보안 인증을 사용하고 새로 고치는 방법에 대한 자세한 내용은 IAM Identity Center 인증 이해하기 섹션을 참조하십시오.

다음 예제는 IAM Identity Center 보안 인증을 요청하도록 SDK를 구성합니다. 또한 자동 토큰 새로 고침도 지원합니다.

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

여러 프로파일에서 sso-session 구성을 재사용할 수 있습니다.

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [profile prod] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole2 [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

sso_account_idsso_role_name은 SSO 토큰 구성의 모든 시나리오에 필수적이지는 않습니다. 애플리케이션에서 베어러 인증을 AWS 서비스 지원하는 인증만 사용하는 경우 기존 AWS 자격 증명은 필요하지 않습니다. 보유자 인증은 보유자 토큰이라는 보안 토큰을 사용하는 HTTP 인증 체계입니다. 이 시나리오에서는 sso_account_idsso_role_name은 필수가 아닙니다. 베어러 토큰 인증을 지원하는지 AWS 서비스 확인하려면 개별 가이드를 참조하십시오.

등록 범위는 sso-session의 일부로 구성됩니다. 범위는 애플리케이션의 사용자 계정 액세스를 제한하는 OAuth 2.0의 메커니즘입니다. 애플리케이션은 하나 이상의 범위를 요청할 수 있으며 애플리케이션에 발급되는 액세스 토큰은 부여된 범위로 제한됩니다. 이러한 범위는 등록된 OIDC 클라이언트에 대해 인증받기 위해 요청된 권한과 클라이언트가 검색한 액세스 토큰을 정의합니다. 지원되는 액세스 범위 옵션은 AWS IAM Identity Center 사용 설명서액세스 범위를 참조하십시오. 다음 예제는 계정 및 역할 목록에 대한 액세스 권한을 제공하도록 sso_registration_scopes을(를)설정합니다.

[sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

인증 토큰은 세션 이름을 기반으로 하는 파일 이름을 사용하여 ~/.aws/sso/cache 디렉터리 아래의 디스크에 캐시됩니다.

새로 고칠 수 없는 레거시 구성

새로 고칠 수 없는 기존 구성을 사용하는 자동 토큰 새로 고침은 지원되지 않습니다. 대신 SSO 토큰 공급자 구성을(를)사용하는 것이 좋습니다.

새로 고칠 수 없는 기존 구성을 사용하려면 프로파일에서 다음 설정을 지정해야 합니다.

  • sso_start_url

  • sso_region

  • sso_account_id

  • sso_role_name

sso_start_urlsso_region 설정을 사용하여 프로파일의 사용자 포털을 지정합니다. sso_account_idsso_role_name 설정으로 권한을 지정합니다.

다음 예제에서는 config 파일에 필요한 네 가지 값을 설정합니다.

[profile my-sso-profile] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-west-2 sso_account_id = 111122223333 sso_role_name = SSOReadOnlyRole

인증 토큰은 sso_start_url에 기반한 파일 이름을 가진 ~/.aws/sso/cache 디렉터리 아래의 디스크에 캐시됩니다.

IAM Identity Center 보안 인증 공급자 설정

다음을 사용하여 이 기능을 구성하십시오.

sso_start_url- 공유 AWS config 파일 설정

조직의 IAM Identity Center 액세스 포털을 가리키는 URL입니다. IAM Identity Center 액세스 포털에 대한 자세한 내용은 사용 설명서의 AWS 액세스 포털 사용을 참조하십시오.AWS IAM Identity Center

이 값을 찾으려면 IAM Identity Center 콘솔을 열고 대시보드를 확인한 다음 AWS 액세스 포털 URL을 찾으십시오.

sso_region- 공유 AWS config 파일 설정

여기에는 IAM ID 센터 포털 호스트, 즉 IAM ID 센터를 활성화하기 전에 선택한 지역이 포함됩니다. AWS 리전 이는 기본 AWS 지역과는 독립적이며 다를 수 있습니다.

AWS 리전 및 해당 코드의 전체 목록은 의 지역별 엔드포인트를 참조하십시오. Amazon Web Services 일반 참조 이 값을 찾으려면 IAM Identity Center 콘솔을 열고 대시보드를 확인한 다음 리전을 찾으십시오.

sso_account_id- 공유 AWS config 파일 설정

인증에 사용하기 위해 AWS Organizations 서비스를 통해 추가된 숫자 ID입니다. AWS 계정

사용 가능한 계정 목록을 보려면 IAM Identity Center 콘솔로 이동하여 AWS 계정 페이지를 여십시오. AWS IAM Identity Center 포털 API 참조의 ListAccountsAPI 방법을 사용하여 사용 가능한 계정 목록을 볼 수도 있습니다. 예를 들어 리스트 계정 AWS CLI 메서드를 호출할 수 있습니다.

sso_role_name- 공유 파일 설정 AWS config

사용자의 최종 권한을 정의하는 IAM 역할로 프로비저닝된 권한 집합의 이름입니다. 역할은 AWS 계정 지정된 위치에 있어야 합니다sso_account_id. Amazon 리소스 이름(ARN)역할을 사용하지 말고 역할 이름을 사용하십시오.

권한 세트에는 IAM 정책 및 사용자 지정 권한 정책이 첨부되어 있으며 할당된 AWS 계정에 대한 사용자의 액세스 수준을 정의합니다.

사용 가능한 권한 집합 목록을 보려면 IAM Identity Center 콘솔로 이동하여 AWS 계정페이지를 여십시오. AWS 계정표에 나열된 올바른 권한 집합 이름을 선택합니다. AWS 계정 AWS IAM Identity Center 포털 API 참조의 ListAccountRolesAPI 방법을 사용하여 사용 가능한 권한 집합 목록을 볼 수도 있습니다. 예를 들어 AWS CLI 메서드를 호출할 수 list-account-roles있습니다.

sso_registration_scopes- 공유 AWS config 파일 설정

sso-session에 대해 인증될 쉼표로 구분된 유효한 범위 문자열 목록입니다. 범위는 IAM Identity Center 보유자 토큰 인증 엔드포인트에 대한 액세스를 승인합니다. IAM Identity Center 서비스에서 새로 고침 토큰을 다시 받으려면 sso:account:access의 최소 범위를 부여해야 합니다. 지원되는 액세스 범위 문자열은 AWS IAM Identity Center 사용 설명서액세스 범위를 참조하십시오. 이 설정은 새로 고칠 수 없는 레거시 구성에는 적용되지 않습니다. 레거시 구성을 사용하여 발급된 토큰은 암시적으로 범위 sso:account:access(으)로 제한됩니다.

AWS SDK와의 호환성

다음 SDK는 이 주제에서 설명하는 기능 및 설정을 지원합니다. 모든 일부 예외가 기록됩니다. 모든 JVM 시스템 속성 설정은 AWS SDK for Java 및 에서만 지원됩니다. AWS SDK for Kotlin

SDK 지원 참고 또는 추가 정보
AWS CLI v2
SDK for C++
SDK for Go V2 (1.x)
SDK for Go 1.x (V1) 공유 config 파일 설정을 사용하려면 구성 파일에서 로드를 켜야 합니다. 세션을 참조하십시오.
SDK for Java 2.x 구성 값은 credentials 파일에서도 지원됩니다.
SDK for Java 1.x 아니요
3.x용 SDK JavaScript
2.x용 SDK JavaScript
SDK for Kotlin
SDK for .NET 3.x
SDK for PHP 3.x
SDK for Python (Boto3)
SDK for Ruby 3.x
SDK for Rust 부분 새로 고칠 수 없는 레거시 구성에만 해당.
다음을 위한 도구 PowerShell