공유 config 및 credentials 파일 - AWS SDK 및 도구

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

공유 configcredentials 파일

공유 AWS configcredentials 파일에는 프로필 세트가 포함되어 있습니다. 프로파일은 프로파일 이름을 사용하여 SDK/도구에서 참조할 수 있는 구성 값 집합입니다. 구성 값은 프로파일이 사용될 때 SDK/도구의 일부 측면을 구성하기 위해 프로파일에 첨부됩니다. 이러한 파일은 값이 사용자의 로컬 환경에 있는 모든 애플리케이션, 프로세스 또는 SDK에 적용된다는 점에서 “공유”됩니다.

일반적으로 공유 credentials 파일에 배치할 수 있는 모든 값을 공유 config 파일에 다른 방법으로 배치할 수 있습니다. 그 반대의 경우는 아닙니다. credentials 파일에는 몇 가지 설정만 배치할 수 있습니다. 하지만 보안 모범 사례로서 액세스 키 ID 및 보안 키와 같은 민감한 값은 별도의 credentials 파일에 보관하는 것이 좋습니다. 이렇게 하면 필요한 경우 각 파일에 별도의 권한을 제공할 수 있습니다.

공유 configcredentials 파일 모두 ASCII 문자만 포함된 일반 텍스트 파일입니다(UTF-8 인코딩). 이들은 일반적으로 INI 파일이라고 하는 형식을 취합니다.

프로파일

공유 configcredentials 파일 내의 설정은 특정 프로파일과 연결됩니다. 프로파일이 여러 개 있는 경우 다양한 설정 구성을 만들어 다양한 시나리오에 적용할 수 있습니다.

[default] 프로파일에는 이름이 지정된 특정 프로파일이 지정되지 않은 경우 SDK 또는 도구 작업에 사용되는 값이 포함됩니다. 이름으로 명시적으로 참조할 수 있는 별도의 프로파일을 만들 수도 있습니다. 이름이 지정된 각 프로파일에는 서로 다른 설정 그룹이 있을 수 있습니다.

[default]은(는)단순히 이름이 지정되지 않은 프로파일입니다. 이 프로파일은 사용자가 프로파일을 지정하지 않을 경우 SDK에서 사용하는 기본 프로파일이기 때문에 default(이)라는 이름이 지정되었습니다. 상속된 기본값을 다른 프로파일에 제공하지 않습니다. 예를 들어 프로파일에 무언가를 설정하고 명명된 [default] 프로파일에서는 설정하지 않으면 명명된 프로파일을 사용할 때 값이 설정되지 않습니다.

이름이 지정된 프로필 설정

프로필을 사용하는 대신 이름이 지정된 [default] 프로필을 설정할 수 있습니다.

다음 중 하나를 설정하여 이 기능을 구성하십시오.

AWS_PROFILE- 환경 변수

모든 SDK 코드와 AWS CLI 명령은 이 명명된 프로필의 설정을 사용합니다.

명령 행을 통한 환경 변수 설정의 Linux/macOS 예제:

export AWS_PROFILE="my_default_profile_name";

명령줄을 통해 환경 변수를 설정하는 Windows 예제:

setx AWS_PROFILE "my_default_profile_name"
aws.profile- JVM 시스템 속성

JVM에서 실행되는 SDK의 경우 시스템 속성을 설정할 수 있습니다. aws.profile SDK는 서비스 클라이언트를 생성할 때 해당 설정이 코드에서 재정의되지 않는 한 명명된 프로필의 설정을 사용합니다.

구성 파일 형식

config 파일은 섹션으로 구성됩니다. 섹션은 이름이 지정된 설정 모음이며 다른 섹션 정의 라인을 찾을 때까지 계속됩니다.

config 파일은 다음 형식을 사용하는 일반 텍스트 파일입니다.

  • 섹션의 모든 항목은 setting-name=value와 같은 일반적인 형식을 취합니다.

  • 줄은 해시태그 문자(#)로 시작하여 주석 처리할 수 있습니다.

섹션 유형

섹션 정의는 설정 모음에 이름을 적용하는 줄입니다. 섹션 정의 줄은 대괄호([])로 시작하고 끝납니다. 대괄호 안에는 섹션 유형 식별자와 섹션의 사용자 지정 이름이 있습니다. 문자, 숫자, 하이픈(-)및 밑줄(_)은 사용할 수 있지만 공백은 사용할 수 없습니다.

섹션 유형: profile

섹션 정의 줄의 예: [profile dev]

profile 섹션 정의 줄은 다양한 시나리오에 적용할 수 있는 구성 그룹의 이름을 지정합니다. [default]은(는)profile 섹션 식별자가 필요하지 않은 유일한 프로파일입니다. 명명된 프로파일의 이해를 높이려면 프로파일의 이전 섹션을 참조하십시오.

다음은 [default] 프로파일이 있는 기본 config 파일을 보여주는 예입니다. region 설정값을 설정합니다.

[default] #Full line comment, this text is ignored. region = us-east-2

다음 예제는 profile 섹션 정의 줄이 있는 config 파일을 보여줍니다. 프로파일의 고유한 이름 앞에 식별자 profile을 사용합니다. 다른 섹션 정의가 나올 때까지 이 줄 뒤에 오는 모든 설정이 이 명명된 프로파일에 포함됩니다.

[profile developers] ...settings...

일부 설정에는 다음 예제의 s3 설정 및 하위 설정과 같은 중첩된 자체 하위 설정 그룹이 있습니다. 하나 이상의 공백으로 들여쓰기하여 하위 설정을 그룹과 연결합니다.

[profile testers] region = us-west-2 s3 = max_concurrent_requests=10 max_queue_size=1000

섹션 유형: sso-session

섹션 정의 줄의 예: [sso-session my-sso]

sso-session섹션 정의 라인은 프로필을 구성하여 자격 증명을 확인하는 데 사용하는 설정 그룹의 이름을 지정합니다. AWS AWS IAM Identity Center Single Sign-On 인증 구성에 대한 자세한 내용은 IAM Identity Center 인증 섹션을 참조하십시오. 프로파일은 키-값 쌍으로 sso-session 섹션에 연결됩니다. 여기서 sso-session 값은 키이고 sso-session 섹션 이름은 sso-session = <name-of-sso-session-section> 같은 값입니다.

다음 예에서는 “my-sso”의 토큰을 사용하여 “SampleRole111122223333" 계정의 IAM 역할에 대한 단기 AWS 자격 증명을 가져올 프로필을 구성합니다. “my-sso” sso-session 섹션은 sso-session 키를 사용하여 profile 섹션에서 이름으로 참조됩니다.

[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

섹션 유형: services

섹션 정의 줄의 예: [services dev]

참고

services 섹션은 서비스별 엔드포인트 사용자 정의를 지원하며 이 기능이 포함된 SDK 및 도구에서만 사용할 수 있습니다. SDK에서 이 기능을 사용할 수 있는지 확인하려면 서비스별 엔드포인트에 대한 AWS SDK와의 호환성을(를)참조하십시오.

services섹션 정의 라인은 요청에 대한 사용자 지정 엔드포인트를 구성하는 설정 그룹의 이름을 지정합니다. AWS 서비스 프로파일은 키-값 쌍으로 services 섹션에 연결됩니다. 여기서 services 값은 키이고 services 섹션 이름은 services = <name-of-services-section> 같은 값입니다.

services섹션은 <SERVICE> = 줄별로 하위 섹션으로 더 구분됩니다. 여기서 <SERVICE> 는 식별자 키입니다. AWS 서비스 AWS 서비스 식별자는 모든 공백을 serviceId 밑줄로 바꾸고 모든 문자는 소문자로 바꾸는 API 모델을 기반으로 합니다. services 섹션에서 사용할 모든 서비스 식별자 키 목록은 서비스별 엔드포인트 식별자을 참조하십시오. 서비스 식별자 키 뒤에는 각각 고유한 줄에 공백 두 개로 들여쓰기하여 중첩된 설정이 이어집니다.

다음 예에서는 services 정의를 사용하여 Amazon DynamoDB 서비스에 대한 요청에만 사용할 엔드포인트를 구성합니다. "local-dynamodb" services 섹션은 services 키를 사용하여 profile 섹션에서 이름으로 참조됩니다. AWS 서비스 식별자 키는 입니다. dynamodb Amazon DynamoDB 서비스 하위 섹션은 dynamodb = 라인에서 시작됩니다. 들여쓰기된 바로 다음 줄은 해당 하위 섹션에 포함되며 해당 서비스에 적용됩니다.

[profile dev] services = local-dynamodb [services local-dynamodb] dynamodb = endpoint_url = http://localhost:8000

사용자 지정 엔드포인트 구성에 대한 자세한 내용은 서비스별 엔드포인트 섹션을 참조하십시오.

보안 인증 파일의 형식

프로파일 섹션이 profile 단어로 시작하지 않는다는 점을 제외하면 credentials 파일의 규칙은 일반적으로 config 파일 규칙과 동일합니다. 대괄호 사이에 고유한 프로파일 이름만 사용하십시오.

[dev] ...settings...

credentials 파일에는 일부 설정과 값만 저장할 수 있습니다. 일반적으로 액세스 키 ID 및 보안 키와 같이 “비밀”로 간주되거나 민감한 값이 있는 항목만 저장합니다. 이 안내서의 각 설정 페이지에는 설정을 credentials 파일에 저장할 수 있는지 아니면 config 파일에만 저장할 수 있는지 명시되어 있습니다.

다음은 [default] 프로파일이 있는 기본 credentials 파일을 보여주는 예입니다. aws_access_key_id 및 aws_secret_access_key 글로벌 설정값을 설정합니다.

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE