의 구성 및 보안 인증 파일 설정 AWS CLI - AWS Command Line Interface

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

의 구성 및 보안 인증 파일 설정 AWS CLI

AWS CLI에서 유지되는 파일에 자주 사용되는 구성 설정과 보안 인증을 저장할 수 있습니다.

파일은 profiles로 나뉩니다. 기본적으로 는 라는 프로필에 있는 설정을 AWS CLI 사용합니다default. 대체 설정을 사용하려면 추가 프로파일을 생성해 참조할 수 있습니다.

지원되는 환경 변수 중 하나를 설정하거나 명령줄 파라미터를 사용하여 개별 설정을 재정의할 수 있습니다. 구성 설정 우선 순위에 대한 자세한 내용은 에 대한 설정 구성 AWS CLI 섹션을 참조하세요.

참고

보안 인증 설정에 대한 자세한 내용은 에 대한 인증 및 액세스 자격 증명 AWS CLI 단원을 참조하세요.

구성 및 보안 인증 파일의 형식

configcredentials 파일은 섹션으로 구성됩니다. 섹션에는 프로파일, sso-sessions,서비스가 포함됩니다. 섹션은 이름이 지정된 설정 모음이며 다른 섹션 정의 라인을 찾을 때까지 계속됩니다. 여러 프로파일 및 섹션을 configcredentials 파일에 저장할 수 있습니다.

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

  • 섹션 이름은 괄호[ ]로 묶여 있습니다(예: [default], [profile user1], [sso-session]).

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

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

config 및 credentials 파일에는 다음과 같은 섹션 유형이 포함됩니다.

섹션 유형: profile

AWS CLI 스토어

파일에 따라 프로파일 섹션 이름은 다음 형식을 사용합니다.

  • Config 파일: [default] [profile user1]

  • 보안 인증 파일: [default] [user1]

    credentials 파일에서 항목을 생성할 때에는 profile 단어를 사용하지 마세요.

각 프로파일은 다른 보안 인증 정보를 지정하며, 다른 AWS 리전 및 출력 형식도 지정할 수 있습니다. config 파일에서 프로파일 이름을 지정할 때 접두사 "profile“를 포함시키되credentials 파일에는 포함시키지 마세요.

다음 예에서는 두 개의 프로파일, 리전 및 출력이 지정된 credentialsconfig 파일을 보여 줍니다. 첫 번째 [기본값]은 지정된 프로파일이 없는 AWS CLI 명령을 실행할 때 사용됩니다. 두 번째는 --profile user1 파라미터로 AWS CLI 명령을 실행할 때 사용됩니다.

IAM Identity Center (SSO)

이 예제는 에 대한 것입니다 AWS IAM Identity Center. 자세한 내용은 를 사용하여 IAM Identity Center 인증 구성 AWS CLI 단원을 참조하십시오.

보안 인증 파일

credentials 파일은 이 인증 방법에 사용되지 않습니다.

Config 파일

[default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_session = my-sso sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json [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
IAM Identity Center (Legacy SSO)

이 예제는 의 레거시 메서드에 대한 것입니다 AWS IAM Identity Center. 자세한 내용은 를 사용하여 IAM Identity Center 인증 구성 AWS CLI 단원을 참조하십시오.

보안 인증 파일

credentials 파일은 이 인증 방법에 사용되지 않습니다.

Config 파일

[default] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json
Short-term credentials

이 예는 AWS Identity and Access Management의 단기 보안 인증을 위한 것입니다. 자세한 내용은 에 대한 단기 자격 증명으로 인증 AWS CLI 단원을 참조하십시오.

보안 인증 파일

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [user1] aws_access_key_id=ASIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY aws_session_token = fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

Config 파일

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text
IAM role

이 예제는 IAM 역할을 수임하기 위한 것입니다. IAM 역할을 사용하는 프로필은 다른 프로필에서 자격 증명을 가져온 다음 IAM 역할 권한을 적용합니다. 다음 예에서 default는 보안 인증의 소스 프로필이며 user1는 동일한 보안 인증을 차용한 다음 새 역할을 맡습니다. 자세한 내용은 에서 IAM 역할 사용 AWS CLI 단원을 참조하십시오.

보안 인증 파일

credentials 파일은 소스 프로필에서 사용하는 인증에 따라 달라집니다. 다음 예제의 경우 소스 프로필은 단기 보안 인증을 사용합니다.

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

Config 파일

[default] region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role source_profile=default role_session_name=session_user1 region=us-east-1 output=text
Amazon EC2 instance metadata credentials

이 예제는 호스팅 Amazon EC2 인스턴스 메타데이터에서 얻은 자격 증명에 대한 것입니다. 자세한 내용은 에서 Amazon EC2 인스턴스 메타데이터를 보안 인증으로 사용 AWS CLI 단원을 참조하십시오.

보안 인증 파일

credentials 파일은 이 인증 방법에 사용되지 않습니다.

Config 파일

[default] role_arn=arn:aws:iam::123456789012:role/defaultrole credential_source=Ec2InstanceMetadata region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role credential_source=Ec2InstanceMetadata region=us-east-1 output=text
Long-term credentials
주의

보안 위험을 방지하려면 특별히 제작된 소프트웨어를 개발하거나 실제 데이터로 작업할 때 IAM 사용자를 인증에 사용하지 마세요. 대신 AWS IAM Identity Center과 같은 보안 인증 공급자를 통한 페더레이션을 사용하십시오.

이 예는 AWS Identity and Access Management의 장기 보안 인증을 위한 것입니다. 자세한 내용은 에 대한 IAM 사용자 자격 증명을 사용하여 인증 AWS CLI 단원을 참조하십시오.

보안 인증 파일

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user1] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

Config 파일

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text

자세한 내용과 추가 권한 부여 및 보안 인증 방법은 에 대한 IAM 사용자 자격 증명을 사용하여 인증 AWS CLI을 참조하세요.

섹션 유형: sso-session

config 파일의 sso-session 섹션은 SSO 액세스 토큰을 획득하기 위한 구성 변수를 그룹화하는 데 사용되며, 그런 다음 보안 AWS 인증 정보를 획득하는 데 사용할 수 있습니다. 다음 설정이 사용됩니다.

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

다음 예제에서는 SSO 자격 증명을 요청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-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 토큰 구성의 모든 시나리오에 sso_account_idsso_role_name가 필요한 것은 아닙니다. 애플리케이션이 보유자 인증 정보를 지원하는 AWS 서비스만 사용하는 경우 기존 AWS 보안 인증 정보는 필요하지 않습니다. 무기명 인증은 무기명 토큰이라는 보안 토큰을 사용하는 HTTP 인증 체계입니다. 이 시나리오에서는 sso_account_idsso_role_name은 필수가 아닙니다. AWS 서비스에 대한 개별 가이드를 참조하여 베어러 토큰 인증을 지원하는지 확인합니다.

또한 등록 범위는 sso-session의 일부로 구성할 수 있습니다. Scope는 OAuth 2.0에서 애플리케이션의 사용자 계정에 대한 액세스를 제한하는 메커니즘입니다. 애플리케이션은 하나 이상의 범위를 요청할 수 있으며 애플리케이션에 발급되는 액세스 토큰은 부여된 범위로 제한됩니다. 이러한 범위는 등록된 OIDC 클라이언트 및 클라이언트에서 검색한 액세스 토큰에 대해 권한을 부여하도록 요청되는 권한을 정의합니다. 다음 예제는 계정/역할 목록에 대한 액세스 권한을 제공하도록 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 디렉터리 아래의 디스크에 캐시됩니다.

이 구성 유형에 대한 자세한 내용은 를 사용하여 IAM Identity Center 인증 구성 AWS CLI을 참조하세요.

섹션 유형: services

services 섹션은 AWS 서비스 요청에 대한 사용자 지정 엔드포인트를 구성하는 설정 그룹입니다. 그런 다음 프로필이 services 섹션에 연결됩니다.

[profile dev] services = my-services

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

다음 예제는 에서 Amazon DynamoDB 서비스에 대한 요청에 사용할 엔드포인트를 구성합니다.my-services 에서 사용되는 섹션 dev 프로필. 들여쓰기된 바로 다음 줄은 해당 하위 섹션에 포함되며 해당 서비스에 적용됩니다.

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

서비스별 엔드포인트에 대한 자세한 내용은 에서 엔드포인트 사용 AWS CLI을 참조하세요.

프로필에 수IAM임 역할 기능을 위한 source_profile 파라미터를 통해 구성된 역할 기반 자격 증명이 있는 경우 는 지정된 프로필에 대한 서비스 구성SDK만 사용합니다. 역할이 연결된 프로파일은 사용하지 않습니다. 예를 들어 다음과 같은 공유 config 파일을 사용합니다.

[profile A] credential_source = Ec2InstanceMetadata endpoint_url = https://profile-a-endpoint.aws/ [profile B] source_profile = A role_arn = arn:aws:iam::123456789012:role/roleB services = profileB [services profileB] ec2 = endpoint_url = https://profile-b-ec2-endpoint.aws

프로필을 사용하고 코드에서 Amazon 로 전화를 B 걸면 엔드포인트EC2가 로 확인됩니다https://profile-b-ec2-endpoint.aws. 코드에서 다른 서비스에 요청을 하는 경우 엔드포인트 확인은 사용자 지정 로직을 따르지 않습니다. 엔드포인트는 프로파일 A에 정의된 글로벌 엔드포인트로 확인되지 않습니다. 글로벌 엔드포인트가 프로파일 B에 적용되려면 프로파일 B 내에서 직접 endpoint_url을 설정해야 합니다.

구성 설정이 저장되는 장소는 어딘가요?

는 사용자가 지정한 민감한 자격 증명 정보를 라는 aws configure 로컬 파일에credentials, 홈 디렉터리.aws에 라는 폴더에 AWS CLI 저장합니다. aws configure를 사용하여 지정하는 덜 민감한 구성 옵션은 config라는 로컬 파일에 저장되며, 홈 디렉터리의 .aws 폴더에도 저장됩니다.

config 파일에 보안 인증 저장

가 파일에서 보안 인증을 읽을 수 있으므로 모든 프로필 설정을 단일 config 파일에 보관할 AWS CLI 수 있습니다. 동일한 이름을 공유하는 프로파일에 대한 보안 인증이 두 파일 모두에 있는 경우 보안 인증 파일의 키가 우선합니다. credentials 파일에 보안 인증을 보관하는 것이 좋습니다. 이러한 파일은 다양한 언어 소프트웨어 개발 키트()에서도 사용됩니다SDKs. SDKs 외에도 를 사용하는 경우 보안 인증 정보를 자체 파일에 저장해야 하는지 AWS CLI확인합니다.

홈 디렉터리 위치는 운영 체제에 따라 달라지지만 Windows에서는 %UserProfile% 환경 변수를, Unix 기반 시스템에서는 $HOME 또는 ~(물결표) 환경 변수를 사용하여 참조됩니다. AWS_CONFIG_FILEAWS_SHARED_CREDENTIALS_FILE 환경 변수를 다른 로컬 경로로 설정하여 파일에 대해 기본이 아닌 위치를 지정할 수 있습니다. 세부 정보는 에 대한 환경 변수 구성 AWS CLI를 참조하세요.

AWS Identity and Access Management (IAM) 역할을 지정하는 공유 프로파일을 사용하면 가 작업을 AWS CLI 호출 AWS STS AssumeRole하여 임시 보안 인증을 검색합니다. 이러한 보안 인증은 (~/.aws/cli/cache)에 저장됩니다. 후속 AWS CLI 명령은 만료될 때까지 캐시된 임시 보안 인증 정보를 사용하며, 이 만료되면 는 AWS CLI 보안 인증 정보를 자동으로 새로 고칩니다.

명명된 프로파일 사용

명시적으로 정의된 프로파일이 없는 경우 해당 default 프로파일이 사용됩니다.

명명된 프로필을 사용하려면 --profile profile-name 옵션을 명령에 추가합니다. 다음 예제에서는 user1 프로필에 정의된 자격 증명 및 설정을 사용하여 모든 Amazon EC2 인스턴스를 나열합니다.

$ aws ec2 describe-instances --profile user1

여러 명령에 대해 명명된 프로파일을 사용하려는 경우, 기본 프로파일로 AWS_PROFILE 환경 변수를 설정하면 모든 명령에서 매번 프로파일을 지정하는 것을 피할 수 있습니다. --profile 매개 변수를 사용해 설정을 변경할 수 있습니다.

Linux or macOS
$ export AWS_PROFILE=user1
Windows
C:\> setx AWS_PROFILE user1

환경 변수를 설정하는 데 set을 사용하면 사용되는 값이 변경되어 현재 명령 프롬프트 세션이 종료될 때까지 또는 변수를 다른 값으로 설정할 때까지 유지됩니다.

환경 변수를 설정하는 데 setx를 사용하면 명령 실행 후 생성한 모든 명령 셸의 값이 변경됩니다. 명령을 실행하는 시점에 이미 실행 중인 다른 명령 셸에는 영향이 미치지 않습니다. 이러한 변경 영향을 확인하려면 명령 셸을 닫고 다시 시작합니다.

환경 변수를 설정하면 기본 프로파일이 변경되어 셸 세션이 종료될 때까지 또는 변수를 다른 값으로 설정할 때까지 유지됩니다. 셸의 스타트업 스크립트에 이들 값을 배치하면 환경 변수가 향후 세션에서도 영구적으로 적용되도록 할 수 있습니다. 자세한 내용은 에 대한 환경 변수 구성 AWS CLI 단원을 참조하십시오.

구성 설정 지정 및 보기

명령을 사용해 구성 설정을 보고 지정하는 몇 가지 방법이 있습니다.

aws configure

보안 인증 정보, 리전 및 출력 형식을 빠르게 설정하고 보려면 이 명령을 실행합니다. 다음 예제는 샘플 값을 보여줍니다.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json
aws configure set

aws configure set를 사용하여 보안 인증 또는 구성 설정을 지정할 수 있습니다. --profile 설정으로 보거나 수정하려는 프로파일을 지정합니다.

예를 들어 다음 명령은 region프로파일에서 integ을 설정합니다.

$ aws configure set region us-west-2 --profile integ

설정을 제거하려면 텍스트 편집기에서 configcredentials 파일의 설정을 수동으로 삭제합니다.

aws configure get

aws configure get을 사용하여 설정한 보안 인증 또는 구성 설정을 검색할 수 있습니다. --profile 설정으로 보거나 수정하려는 프로파일을 지정합니다.

예를 들어 다음 명령은 region프로파일에서 integ 설정을 검색합니다.

$ aws configure get region --profile integ us-west-2

출력이 비어 있으면 설정이 명시적으로 지정되지 않고 기본값을 사용합니다.

aws configure import

IAM 웹 콘솔에서 생성된 CSV 보안 인증 정보를 가져옵니다. IAM Identity Center에서 생성된 자격 증명에는 해당되지 않습니다. IAM Identity Center를 사용하는 고객은 aws configure sso를 사용해야 합니다. 프로필 이름이 사용자 이름과 일치하는 CSV 파일을 가져옵니다. CSV 파일에는 다음 헤더가 포함되어야 합니다.

  • 사용자 이름

  • 액세스 키 ID

  • 비밀 액세스 키

참고

초기 키 페어 생성 중에 .csv 파일 다운로드(Download .csv file) 대화 상자를 닫으면 대화 상자를 닫은 후 비밀 액세스 키에 액세스할 수 없습니다. .csv 파일이 있어야 하는 경우 필요한 헤더와 저장된 키 페어 정보를 사용하여 파일을 직접 만들어야 합니다. 키 페어 정보에 액세스할 수 없는 경우 새 키 페어를 생성해야 합니다.

$ aws configure import --csv file://credentials.csv
aws configure list

구성 데이터를 나열하려면 aws configure list 명령을 사용합니다. 이 명령은 지정된 프로필에 사용되는 프로필, 액세스 키, 비밀 키 및 리전 구성 정보를 나열합니다. 각 구성 항목에 대해 값, 구성 값이 검색된 위치, 구성 변수 이름이 표시됩니다.

예를 들어 환경 변수 AWS 리전 에 를 제공하는 경우 이 명령은 구성한 리전의 이름, 이 값이 환경 변수에서 가져온 이름, 환경 변수의 이름을 보여줍니다.

역할 및 IAM Identity Center와 같은 임시 자격 증명 방법의 경우 이 명령은 일시적으로 캐시된 액세스 키를 표시하고 보안 액세스 키가 표시됩니다.

$ aws configure list Name Value Type Location ---- ----- ---- -------- profile <not set> None None access_key ****************ABCD shared-credentials-file secret_key ****************ABCD shared-credentials-file region us-west-2 env AWS_DEFAULT_REGION
aws configure list-profiles

모든 프로파일 이름을 나열하려면 aws configure list-profiles 명령을 사용합니다.

$ aws configure list-profiles default test
aws configure sso

이 명령을 실행하여 AWS IAM Identity Center 보안 인증 정보, 리전 및 출력 형식을 빠르게 설정하고 확인합니다. 다음 예제는 샘플 값을 보여줍니다.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access
aws configure sso-session

이 명령을 실행하여 credentialsconfig 파일의 sso-session 섹션에서 AWS IAM Identity Center 보안 인증 정보, 리전 및 출력 형식을 빠르게 설정하고 확인합니다. 다음 예제는 샘플 값을 보여줍니다.

$ aws configure sso-session SSO session name: my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access

새 구성 및 보안 인증 설정 명령 예제

다음 예에서는 다양한 인증 방법에 대해 지정된 보안 인증 정보, 리전 및 출력을 사용하여 기본 프로필을 구성하는 방법을 보여 줍니다.

IAM Identity Center (SSO)

이 예제는 aws configure sso 마법사를 AWS IAM Identity Center 사용하기 위한 것입니다. 자세한 내용은 를 사용하여 IAM Identity Center 인증 구성 AWS CLI 단원을 참조하십시오.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 Attempting to automatically open the SSO authorization page in your default browser. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
IAM Identity Center (Legacy SSO)

이 예제는 aws configure sso 마법사를 AWS IAM Identity Center 사용하는 레거시 메서드에 대한 것입니다. 레거시 를 사용하려면 세션 이름을 비워 SSO둡니다. 자세한 내용은 를 사용하여 IAM Identity Center 인증 구성 AWS CLI 단원을 참조하십시오.

$ aws configure sso SSO session name (Recommended): SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 SSO authorization page has automatically been opened in your default browser. Follow the instructions in the browser to complete this authorization request. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
Short-term credentials

이 예는 AWS Identity and Access Management의 단기 보안 인증을 위한 것입니다. AWS 구성 마법사를 사용하여 초기 값을 설정한 다음 aws configure set 명령은 필요한 마지막 값을 할당합니다. 자세한 내용은 에 대한 단기 자격 증명으로 인증 AWS CLI 단원을 참조하십시오.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json $ aws configure set aws_session_token fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
IAM role

이 예제는 IAM 역할을 수임하기 위한 것입니다. IAM 역할을 사용하는 프로필은 다른 프로필에서 자격 증명을 가져온 다음 IAM 역할 권한을 적용합니다. 다음 예에서 default는 보안 인증의 소스 프로필이며 user1는 동일한 보안 인증을 차용한 다음 새 역할을 맡습니다. 이 프로세스에는 마법사가 없으므로 aws configure set 명령을 사용하여 각 값을 설정합니다. 자세한 내용은 에서 IAM 역할 사용 AWS CLI 단원을 참조하십시오.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set source_profile default $ aws configure set role_session_name session_user1 $ aws configure set region us-west-2 $ aws configure set output json
Amazon EC2 instance metadata credentials

이 예제는 호스팅 Amazon EC2 인스턴스 메타데이터에서 얻은 자격 증명에 대한 것입니다. 이 프로세스에는 마법사가 없으므로 aws configure set 명령을 사용하여 각 값을 설정합니다. 자세한 내용은 에서 Amazon EC2 인스턴스 메타데이터를 보안 인증으로 사용 AWS CLI 단원을 참조하십시오.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set credential_source Ec2InstanceMetadata $ aws configure set region us-west-2 $ aws configure set output json
Long-term credentials
주의

보안 위험을 방지하려면 특별히 제작된 소프트웨어를 개발하거나 실제 데이터로 작업할 때 IAM 사용자를 인증에 사용하지 마세요. 대신 AWS IAM Identity Center과 같은 보안 인증 공급자를 통한 페더레이션을 사용하십시오.

이 예는 AWS Identity and Access Management의 장기 보안 인증을 위한 것입니다. 자세한 내용은 에 대한 IAM 사용자 자격 증명을 사용하여 인증 AWS CLI 단원을 참조하십시오.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

지원되는 config 파일 설정

config 파일에서는 다음 설정이 지원됩니다. 같은 이름의 환경 변수나 같은 이름의 명령줄 옵션으로 재정의되지 않는 한, 지정된(또는 기본 설정된) 프로파일에 나열된 값들이 사용됩니다. 어떤 순서 설정이 우선적으로 사용되는지에 대한 자세한 내용은 에 대한 설정 구성 AWS CLI 섹션을 참조하세요.

Global settings(글로벌 설정)

aws_access_key_id

명령 요청을 인증하기 위한 자격 증명의 일부로 사용되는 AWS 액세스 키를 지정합니다. 이 키는 config 파일에 저장될 수도 있지만, credentials 파일에 저장하는 것이 좋습니다.

AWS_ACCESS_KEY_ID 환경 변수로 재정의할 수도 있습니다. 명령줄 옵션으로 액세스 키 ID를 지정할 수는 없습니다.

aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_secret_access_key

명령 요청을 인증하기 위한 자격 증명의 일부로 사용되는 AWS 보안 암호 키를 지정합니다. 이 키는 config 파일에 저장될 수도 있지만, credentials 파일에 저장하는 것이 좋습니다.

AWS_SECRET_ACCESS_KEY 환경 변수로 재정의할 수도 있습니다. 명령줄 옵션으로 보안 액세스 키를 지정할 수는 없습니다.

aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token

AWS 세션 토큰을 지정합니다. 세션 토큰은 수동으로 임시 보안 보안 인증을 지정하는 경우에만 필요합니다. 이 키는 config 파일에 저장될 수도 있지만, credentials 파일에 저장하는 것이 좋습니다.

AWS_SESSION_TOKEN 환경 변수로 재정의할 수도 있습니다. 명령줄 옵션으로 세션 토큰을 지정할 수는 없습니다.

aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
ca_bundle

인증서를 확인하는 데 사용되는 CA SSL 인증서 번들(.pem확장이 있는 파일)을 지정합니다.

AWS_CA_BUNDLE 환경 변수나 --ca-bundle 명령줄 옵션으로 재정의할 수도 있습니다.

ca_bundle = dev/apps/ca-certs/cabundle-2019mar05.pem
cli_auto_prompt

AWS CLI 버전 2에 대한 자동 프롬프트를 활성화합니다. 두 가지 설정을 사용할 수 있습니다.

  • onaws 명령을 실행할 때마다 전체 자동 프롬프트 모드를 사용합니다. 여기에는 전체 명령 또는 불완전한 명령 ENTER 후 를 누르는 것이 포함됩니다.

    cli_auto_prompt = on
  • on-partial은 부분 자동 프롬프트 모드를 사용합니다. 명령이 불완전하거나 클라이언트 측 유효성 검사 오류로 인해 실행할 수 없는 경우 자동 프롬프트가 사용됩니다. 이 모드는 기존 스크립트 또는 Runbook이 있거나, 모든 명령에 대한 프롬프트가 아니라 익숙하지 않은 명령에 대해서만 자동 프롬프트를 사용하려는 경우 특히 유용합니다.

    cli_auto_prompt = on-partial

aws_cli_auto_prompt 환경 변수 또는 --cli-auto-prompt--no-cli-auto-prompt 명령줄 파라미터를 사용하여 이 설정을 재정의할 수 있습니다.

AWS CLI 버전 2 자동 프롬프트 기능에 대한 자세한 내용은 섹션을 참조하세요에서 명령 프롬프트 활성화 및 사용 AWS CLI.

cli_binary_format

AWS CLI 버전 2가 바이너리 입력 파라미터를 해석하는 방법을 지정합니다. 다음 값 중 하나일 수 있습니다.

  • base64 - 기본값입니다. 바이너리 대형 객체(BLOB)로 입력되는 입력 파라미터는 base64 인코딩 문자열을 허용합니다. 실제 이진 콘텐츠를 전달하려면 해당 콘텐츠를 파일에 넣고 fileb:// 접두사와 함께 파일 경로와 이름을 파라미터 값으로 입력합니다. 파일에 포함된 base64 인코딩 텍스트를 전달하려면 file:// 접두사와 함께 파일 경로와 이름을 파라미터 값으로 입력합니다.

  • raw-in-base64-out - AWS CLI 버전 1의 기본값입니다. 설정 값이 raw-in-base64-out이면 file:// 접두사를 사용하여 참조된 파일이 텍스트로 읽히고 AWS CLI 에서 이진수로 인코딩을 시도합니다.

이 항목은 동등한 수준의 환경 변수를 갖지 않습니다. --cli-binary-format raw-in-base64-out 파라미터를 사용하여 단일 명령에서 값을 지정할 수 있습니다.

cli_binary_format = raw-in-base64-out

fileb:// 접두사 표기법을 사용하여 파일의 이진 값을 참조하는 경우 는 AWS CLI 항상 파일에 원시 이진 콘텐츠가 포함될 것으로 예상하고 값을 변환하려고 시도하지 않습니다.

file:// 접두사 표기법을 사용하여 파일의 이진 값을 참조하면 는 현재 cli_binary_format 설정에 따라 파일을 AWS CLI 처리합니다. 해당 설정의 값이 base64 (명시적으로 설정되지 않은 경우 기본값)인 경우 는 파일에 base64로 인코딩된 텍스트가 포함될 것으로 AWS CLI 예상합니다. 해당 설정의 값이 인 경우 raw-in-base64-out는 파일에 원시 바이너리 콘텐츠가 포함될 것으로 AWS CLI 예상합니다.

cli_history

기본 설정은 “Disable”입니다. 이 설정은 AWS CLI에 대한 명령 기록을 활성화합니다. 이 설정을 활성화하면 는 aws 명령 기록을 AWS CLI 기록합니다.

cli_history = enabled

기록을 나열하려면 aws history list 명령을 사용하고 세부 정보를 보려면 aws history show 명령에 결과 command_ids를 사용할 수 있습니다. 자세한 내용은 AWS CLI 참조 가이드aws history 섹션을 참조하세요.

cli_pager

출력에 사용할 페이저 프로그램을 지정합니다. 기본적으로 AWS CLI 버전 2는 운영 체제의 기본 호출기 프로그램을 통해 모든 출력을 반환합니다.

AWS_PAGER 환경 변수로 재정의할 수 있습니다.

cli_pager=less
cli_timestamp_format

출력에 포함된 타임스탬프 값의 형식을 지정합니다. 다른 값 중 하나를 지정할 수 있습니다.

  • iso8601 – AWS CLI 버전 2의 기본값입니다. 지정된 경우 는 ISO 8601에 따라 모든 타임스탬프를 AWS CLI 재포맷합니다.

    ISO 8601 형식 타임스탬프는 다음 예제와 같습니다. 첫 번째 예제는 Z 사후 를 포함하여 Coordinated Universal Time(UTC)의 시간을 보여줍니다. 날짜와 시간은 T로 구분됩니다.

    2019-10-31T22:21:41Z

    다른 시간대를 지정하려면 대신 + 또는 Z를 지정-하고 원하는 시간대가 앞뒤에 있는 시간을 UTC2자리 값으로 지정합니다. 다음 예제에서는 이전 예제와 동일한 시간을 보여주지만 8시간 뒤에 있는 태평양 표준 시간으로 조정되었습니다UTC.

    2019-10-31T14:21:41-08
  • 와이어 - AWS CLI 버전 1의 기본값입니다. 지정된 경우 는 HTTP 쿼리 응답에 수신된 것과 정확히 동일한 모든 타임스탬프 값을 AWS CLI 표시합니다.

이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.

cli_timestamp_format = iso8601
credential_process

이 명령에 사용할 인증 자격 증명을 생성하거나 검색하기 위해 가 AWS CLI 실행하는 외부 명령을 지정합니다. 이 명령은 특정 형식으로 보안 인증을 반환해야 합니다. 이 설정을 사용하는 방법에 대한 자세한 내용은 에서 외부 프로세스를 사용하여 보안 인증 정보 소싱 AWS CLI 단원을 참조하세요.

이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.

credential_process = /opt/bin/awscreds-retriever --username susan
credential_source

Amazon EC2 인스턴스 또는 컨테이너 내에서 가 AWS CLI role_arn 파라미터로 지정한 역할을 수임하는 데 사용할 자격 증명을 찾을 수 있는 위치를 지정하는 데 사용됩니다. source_profilecredential_source 모두를 동일한 프로파일에서 지정할 수 없습니다.

이 파라미터는 다음 세 가지 값 중 하나를 가질 수 있습니다.

  • 환경 - AWS CLI 가 환경 변수에서 소스 자격 증명을 검색하도록 지정합니다.

  • Ec2InstanceMetadata - AWS CLI 가 EC2 인스턴스 프로파일에 연결된 IAM 역할을 사용하여 소스 자격 증명을 가져오도록 지정합니다.

  • EcsContainer - AWS CLI 가 ECS 컨테이너에 연결된 IAM 역할을 소스 자격 증명으로 사용하도록 지정합니다.

credential_source = Ec2InstanceMetadata
duration_seconds

역할 세션의 최대 기간(초)을 지정합니다. 이 값의 범위는 900초(15분)부터 해당 역할에 대한 최대 세션 기간 설정(최대값: 43200초)까지 가능합니다. 이는 선택적 파라미터이며 기본적으로 값이 3600초로 설정됩니다.

endpoint_url

모든 서비스 요청에 사용되는 엔드포인트를 지정합니다. config 파일의 services 섹션에서 이 설정을 사용하면 엔드포인트가 지정된 서비스에 대해서만 사용됩니다.

다음 예제에서는 Amazon S3에 대해 글로벌 엔드포인트 http://localhost:1234 및 서비스별 엔드포인트 http://localhost:4567를 사용합니다.

[profile dev] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567

엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에 파라미터로 명시적으로 선언되는 등 여러 위치에 있습니다. AWS CLI 엔드포인트 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.

  1. --endpoint-url 명령줄 옵션

  2. 사용 설정된 경우, 사용자 지정 엔드포인트를 무시하도록 AWS_IGNORE_CONFIGURED_ENDPOINT_URLS 글로벌 엔드포인트 환경 변수 또는 프로파일 설정 ignore_configure_endpoint_urls를 사용합니다.

  3. 서비스별 환경 변수 AWS_ENDPOINT_URL_<SERVICE>에서 제공하는 값(예: AWS_ENDPOINT_URL_DYNAMODB).

  4. AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINTAWS_ENDPOINT_URL 환경 변수에서 제공하는 값입니다.

  5. 공유 config 파일의 services 섹션 내의 endpoint_url 설정에서 제공하는 서비스별 엔드포인트 값.

  6. 공유 config 파일의 profile 내에서 endpoint_url 설정에 의해 제공되는 값.

  7. use_dualstack_endpoint, use_fips_endpointendpoint_url 설정입니다.

  8. 각 URL 의 기본 엔드포인트 AWS 서비스 가 마지막으로 사용됩니다. 각 리전에서 사용할 수 있는 표준 서비스 엔드포인트 목록은 Amazon Web Services 일반 참조AWS 리전 및 엔드포인트를 참조하세요.

ignore_configure_endpoint_urls

활성화된 경우 는 config 파일에 지정된 모든 사용자 지정 엔드포인트 구성을 AWS CLI 무시합니다. 유효 값은 truefalse입니다.

ignore_configure_endpoint_urls = true

엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에 파라미터로 명시적으로 선언되는 등 여러 위치에 있습니다. AWS CLI 엔드포인트 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.

  1. --endpoint-url 명령줄 옵션

  2. 사용 설정된 경우, 사용자 지정 엔드포인트를 무시하도록 AWS_IGNORE_CONFIGURED_ENDPOINT_URLS 글로벌 엔드포인트 환경 변수 또는 프로파일 설정 ignore_configure_endpoint_urls를 사용합니다.

  3. 서비스별 환경 변수 AWS_ENDPOINT_URL_<SERVICE>에서 제공하는 값(예: AWS_ENDPOINT_URL_DYNAMODB).

  4. AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINTAWS_ENDPOINT_URL 환경 변수에서 제공하는 값입니다.

  5. 공유 config 파일의 services 섹션 내의 endpoint_url 설정에서 제공하는 서비스별 엔드포인트 값.

  6. 공유 config 파일의 profile 내에서 endpoint_url 설정에 의해 제공되는 값.

  7. use_dualstack_endpoint, use_fips_endpointendpoint_url 설정입니다.

  8. 각 URL 의 기본 엔드포인트 AWS 서비스 가 마지막으로 사용됩니다. 각 리전에서 사용할 수 있는 표준 서비스 엔드포인트 목록은 Amazon Web Services 일반 참조AWS 리전 및 엔드포인트를 참조하세요.

external_id

타사에서 고객 계정의 역할을 수임하는 데 사용하는 고유한 식별자를 지정합니다. 이는 ExternalId 작업의 AssumeRole 파라미터로 매핑됩니다. 이 파라미터는 역할에 대한 신뢰 정책에서 ExternalId에 값을 지정하는 경우에만 필요합니다. 자세한 내용은 IAM 사용 설명서AWS 리소스에 대한 액세스 권한을 타사에 부여할 때 외부 ID를 사용하는 방법을 참조하세요.

max_attempts

AWS CLI 재시도 핸들러가 사용하는 최대 재시도 횟수 값을 지정합니다. 여기서 초기 호출은 사용자가 제공하는 max_attempts 값으로 계산됩니다.

AWS_MAX_ATTEMPTS 환경 변수를 사용하여 이 값을 재정의할 수 있습니다.

max_attempts = 3
mfa_serial

역할을 수임할 때 사용할 MFA 디바이스의 식별 번호입니다. 이는 수임 중인 역할의 신뢰 정책에 MFA 인증이 필요한 조건이 포함된 경우에만 필수입니다. 값은 하드웨어 디바이스의 일련 번호(예: GAHT12345678) 또는 가상 MFA 디바이스의 Amazon 리소스 이름(ARN)(예: )일 수 있습니다arn:aws:iam::123456789012:mfa/user.

output

이 프로파일을 사용하여 요청된 명령의 기본 출력 형식을 지정합니다. 다음 값 중 하나를 지정할 수 있습니다.

  • json - 출력은 JSON 문자열 형식입니다.

  • yaml - 출력은 YAML 문자열 형식입니다.

  • yaml-stream - 출력은 스트리밍되고 YAML 문자열로 형식이 지정됩니다. 스트리밍을 통해 대용량 데이터 유형을 빠르게 처리할 수 있습니다.

  • text - 출력은 여러 줄의 탭으로 구분된 문자열 값으로 형식이 지정됩니다. 출력을 grep, sed 또는 awk와 같은 텍스트 프로세서로 전달하는 데 사용할 수 있습니다.

  • table - 출력은 셀 테두리를 형성하기 위해 +|- 문자를 사용하여 표로 형식이 지정됩니다. 일반적으로 읽기는 쉽지만 프로그래밍 방식으로는 유용하지 않은 "인간 친화적" 형식으로 정보를 표시합니다.

AWS_DEFAULT_OUTPUT 환경 변수나 --output 명령줄 옵션으로 재정의할 수도 있습니다.

output = table
parameter_validation

AWS CLI 클라이언트가 파라미터를 AWS 서비스 엔드포인트로 보내기 전에 파라미터 검증을 시도할지 여부를 지정합니다.

  • true - 기본값입니다. 지정된 경우 는 명령줄 파라미터의 로컬 검증을 AWS CLI 수행합니다.

  • false - 지정된 경우 AWS CLI 는 명령줄 파라미터를 AWS 서비스 엔드포인트로 보내기 전에 검증하지 않습니다.

이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.

parameter_validation = false
region

이 프로파일을 사용하여 요청 AWS 리전 된 명령에 대한 요청을 보낼 를 지정합니다.

  • Amazon Web Services 일반 참조AWS 리전 및 엔드포인트에 나열된 대로 선택한 서비스에서 사용할 수 있는 모든 리전 코드를 지정할 수 있습니다.

  • aws_global 를 사용하면 (AWS STS) 및 Amazon Simple Storage Service AWS Security Token Service (Amazon S3.

AWS_REGION 환경 변수, AWS_DEFAULT_REGION 환경 변수 또는 --region 명령줄 옵션을 사용하여 이 값을 재정의할 수 있습니다.

region = us-west-2
retry_mode

에서 AWS CLI 사용하는 재시도 모드를 지정합니다. 레거시(기본값), 표준 및 적응형, 이렇게 3가지 재시도 모드를 사용할 수 있습니다. 재시도에 대한 자세한 내용은 AWS CLI 에서 재시도 AWS CLI을 참조하세요.

AWS_RETRY_MODE 환경 변수를 사용하여 이 값을 재정의할 수 있습니다.

retry_mode = standard
role_arn

AWS CLI 명령을 실행하는 데 사용할 IAM 역할의 Amazon 리소스 이름(ARN)을 지정합니다. 또한 다음 파라미터 중 하나를 지정하여 이 역할을 수임할 수 있는 권한이 있는 보안 인증을 식별해야 합니다.

  • source_profile

  • credential_source

role_arn = arn:aws:iam::123456789012:role/role-name

환경 변수 AWS_ROLE_ARN이 이 설정을 재정의합니다.

웹 보안 인증 사용에 대한 자세한 내용은 웹 자격 증명을 사용한 역할 수임 단원을 참조하세요.

role_session_name

역할 세션에 연결할 이름을 지정합니다. 이 값은 AWS CLI 가 AssumeRole 작업을 호출할 때 RoleSessionName 파라미터에 제공되며, 는 가정된 역할 사용자 의 일부가 됩니다ARN arn:aws:sts::123456789012:assumed-role/role_name/role_session_name. 이는 선택 가능한 파라미터입니다. 이 값을 제공하지 않은 경우 세션 이름이 자동으로 생성됩니다. 이 이름은 이 세션과 연결된 항목에 대한 AWS CloudTrail 로그에 나타납니다.

role_session_name = maria_garcia_role

환경 변수 AWS_ROLE_SESSION_NAME이 이 설정을 재정의합니다.

웹 보안 인증 사용에 대한 자세한 내용은 웹 자격 증명을 사용한 역할 수임 단원을 참조하세요.

services

프로파일에 사용할 서비스 구성을 지정합니다.

[profile dev-s3-specific-and-global] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567

services 섹션에 대한 자세한 내용은 섹션 유형: services을 참조하세요.

환경 변수 AWS_ROLE_SESSION_NAME이 이 설정을 재정의합니다.

웹 보안 인증 사용에 대한 자세한 내용은 웹 자격 증명을 사용한 역할 수임 단원을 참조하세요.

sdk_ua_app_id

여러 고객 애플리케이션에서 단일 를 사용하여 에 전화를 걸 AWS 계정 수 있습니다 AWS 서비스. 애플리케이션 ID는 를 사용하여 호출 세트를 수행한 소스 애플리케이션을 식별합니다 AWS 서비스. AWS SDKs 및 서비스는 이 값을 고객 커뮤니케이션에 다시 표시하는 것 외에는 이 값을 사용하거나 해석하지 않습니다. 예를 들어 이 값을 운영 이메일에 포함시켜 알림과 연결된 애플리케이션을 고유하게 식별할 수 있습니다.

애플리케이션 ID는 최대 길이가 50자인 문자열입니다. 문자, 숫자 및 특수 문자는 허용됩니다. ! $ % & * + - . , ^ _ ` | ~ 기본적으로 값이 할당되지 않습니다.

sdk_ua_app_id = prod1

AWS_SDK_UA_APP_ID 환경 변수를 사용하여 이 설정을 덮어쓸 수 있습니다. 이 값은 명령줄 파라미터로 설정할 수 없습니다.

source_profile

AWS CLI 에서 role_arn 파라미터로 지정한 역할을 수임하는 데 사용할 수 있는 장기 보안 인증으로 명명된 프로파일을 지정합니다. source_profilecredential_source 모두를 동일한 프로파일에서 지정할 수 없습니다.

source_profile = production-profile
sso_account_id

연결된 IAM Identity Center 사용자에게 부여하려는 권한이 있는 IAM 역할이 포함된 AWS 계정 ID를 지정합니다.

이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.

sso_account_id = 123456789012
sso_region

AWS 액세스 포털 호스트가 포함된 AWS 리전을 지정합니다. 이는 와 별개이며 기본 CLI region 파라미터와 다른 리전일 수 있습니다.

이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.

sso_region = us_west-2
sso_registration_scopes

sso-session에 대해 인증될 쉼표로 구분된 범위 목록입니다. 범위는 IAM Identity Center 베어러 토큰 승인 엔드포인트에 대한 액세스를 승인합니다. 유효한 범위는 sso:account:access 등 문자열입니다. 이 설정은 새로 고칠 수 없는 레거시 구성에는 적용되지 않습니다.

sso_registration_scopes = sso:account:access
sso_role_name

이 프로파일을 사용할 때 사용자의 권한을 정의하는 IAM 역할의 표시 이름을 지정합니다.

이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.

sso_role_name = ReadAccess
sso_start_url

조직의 AWS 액세스 포털을 가리키URL는 를 지정합니다. 는 이를 AWS CLI 사용하여 IAM Identity Center 서비스와 세션을 URL 설정하여 사용자를 인증합니다. AWS 액세스 포털을 찾으려면 다음 중 하나를 URL사용합니다.

  • 초대 이메일을 열면 AWS 액세스 포털이 나열URL됩니다.

  • 에서 AWS IAM Identity Center 콘솔을 엽니다https://console.aws.amazon.com/singlesignon/. AWS 액세스 포털은 설정에 나열URL됩니다.

이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.

sso_start_url = https://my-sso-portal.awsapps.com/start
use_dualstack_endpoint

듀얼 스택 엔드포인트를 사용하여 AWS 요청을 보낼 수 있습니다. IPv4 및 IPv6 트래픽을 모두 지원하는 듀얼 스택 엔드포인트에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 Amazon S3 듀얼 스택 엔드포인트 사용을 참조하세요. 이중 스택 엔드포인트는 일부 리전에 사용할 수 있는 서비스입니다. 서비스 또는 에 대한 듀얼 스택 엔드포인트가 없는 경우 요청이 실패 AWS 리전합니다. 이 옵션은 기본적으로 비활성화되어 있습니다.

이 옵션은 use_accelerate_endpoint 설정에서 함께 사용할 수 없습니다.

엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에 파라미터로 명시적으로 선언되는 등 여러 위치에 있습니다. AWS CLI 엔드포인트 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.

  1. --endpoint-url 명령줄 옵션

  2. 사용 설정된 경우, 사용자 지정 엔드포인트를 무시하도록 AWS_IGNORE_CONFIGURED_ENDPOINT_URLS 글로벌 엔드포인트 환경 변수 또는 프로파일 설정 ignore_configure_endpoint_urls를 사용합니다.

  3. 서비스별 환경 변수 AWS_ENDPOINT_URL_<SERVICE>에서 제공하는 값(예: AWS_ENDPOINT_URL_DYNAMODB).

  4. AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINTAWS_ENDPOINT_URL 환경 변수에서 제공하는 값입니다.

  5. 공유 config 파일의 services 섹션 내의 endpoint_url 설정에서 제공하는 서비스별 엔드포인트 값.

  6. 공유 config 파일의 profile 내에서 endpoint_url 설정에 의해 제공되는 값.

  7. use_dualstack_endpoint, use_fips_endpointendpoint_url 설정입니다.

  8. 각 URL 의 기본 엔드포인트 AWS 서비스 가 마지막으로 사용됩니다. 각 리전에서 사용할 수 있는 표준 서비스 엔드포인트 목록은 Amazon Web Services 일반 참조AWS 리전 및 엔드포인트를 참조하세요.

use_fips_endpoint

일부 AWS 서비스는 일부 에서 연방 정보 처리 표준(FIPS) 140-2를 지원하는 엔드포인트를 제공합니다 AWS 리전. AWS 서비스가 를 지원하는 경우 FIPS이 설정은 AWS CLI 에서 를 사용해야 하는 FIPS 엔드포인트를 지정합니다. 표준 AWS 엔드포인트와 달리 FIPS 엔드포인트는 FIPS 140-2를 준수하는 TLS 소프트웨어 라이브러리를 사용합니다. 이러한 엔드포인트는 미국 정부와 상호 작용하는 기업에 필요할 수 있습니다.

이 설정이 활성화되었지만 의 서비스에 대한 FIPS 엔드포인트가 없는 경우 AWS 명령 AWS 리전이 실패할 수 있습니다. 이 경우 --endpoint-url 옵션을 사용하여 명령에 사용할 엔드포인트를 수동으로 지정하거나 서비스별 엔드포인트를 사용합니다.

로 FIPS 엔드포인트를 지정하는 방법에 대한 자세한 내용은 서비스별 엔드포인트 를 AWS 리전참조하세요. FIPS

엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에 파라미터로 명시적으로 선언되는 등 여러 위치에 있습니다. AWS CLI 엔드포인트 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.

  1. --endpoint-url 명령줄 옵션

  2. 사용 설정된 경우, 사용자 지정 엔드포인트를 무시하도록 AWS_IGNORE_CONFIGURED_ENDPOINT_URLS 글로벌 엔드포인트 환경 변수 또는 프로파일 설정 ignore_configure_endpoint_urls를 사용합니다.

  3. 서비스별 환경 변수 AWS_ENDPOINT_URL_<SERVICE>에서 제공하는 값(예: AWS_ENDPOINT_URL_DYNAMODB).

  4. AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINTAWS_ENDPOINT_URL 환경 변수에서 제공하는 값입니다.

  5. 공유 config 파일의 services 섹션 내의 endpoint_url 설정에서 제공하는 서비스별 엔드포인트 값.

  6. 공유 config 파일의 profile 내에서 endpoint_url 설정에 의해 제공되는 값.

  7. use_dualstack_endpoint, use_fips_endpointendpoint_url 설정입니다.

  8. 각 URL 의 기본 엔드포인트 AWS 서비스 가 마지막으로 사용됩니다. 각 리전에서 사용할 수 있는 표준 서비스 엔드포인트 목록은 Amazon Web Services 일반 참조AWS 리전 및 엔드포인트를 참조하세요.

web_identity_token_file

자격 증명 공급자가 제공하는 OAuth 2.0 액세스 토큰 또는 OpenID Connect ID 토큰이 포함된 파일의 경로를 지정합니다. AWS CLI 에서 이 파일의 내용을 로드하고 해당 파일을 WebIdentityToken 작업에 대한 AssumeRoleWithWebIdentity 인수로 전달합니다.

환경 변수 AWS_WEB_IDENTITY_TOKEN_FILE이 이 설정을 재정의합니다.

웹 보안 인증 사용에 대한 자세한 내용은 웹 자격 증명을 사용한 역할 수임 단원을 참조하세요.

tcp_keepalive

AWS CLI 클라이언트가 연결 TCP 유지 패킷을 사용할지 여부를 지정합니다.

이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.

tcp_keepalive = false

S3 사용자 지정 명령 설정

Amazon S3는 이 Amazon S3 작업을 AWS CLI 수행하는 방법을 구성하는 여러 설정을 지원합니다. 일부 설정은 s3apis3 네임스페이스의 모든 S3 명령에 적용됩니다. 다른 명령은 특히 일반적인 작업을 추상화하고 API 작업에 대한 매핑 이상을 one-to-one 수행하는 S3 '사용자 지정' 명령을 위한 것입니다. aws s3 이전 명령인 cp, sync, mvrm에는 S3 이전을 제어하는 데 사용할 수 있는 추가 설정이 있습니다.

이러한 옵션은 모두 config 파일에서 s3 중첩 설정을 지정하여 구성할 수 있습니다. 각 설정은 자체의 줄에서 들여쓰기가 됩니다.

참고

이러한 설정은 전적으로 선택 사항입니다. 이러한 설정을 구성하지 않고도 aws s3 이전 명령을 성공적으로 사용할 수 있어야 합니다. 이러한 설정은 성능을 조정하거나 aws s3 명령을 실행 중인 특정 환경을 설명할 수 있도록 하기 위해 제공됩니다.

이러한 설정은 모두 상위 수준 s3 파일의 config 키에서 지정됩니다(development 프로파일의 경우 다음 예제 참조).

[profile development] s3 = max_concurrent_requests = 20 max_queue_size = 10000 multipart_threshold = 64MB multipart_chunksize = 16MB max_bandwidth = 50MB/s use_accelerate_endpoint = true addressing_style = path

아래 설정은 s3 또는 s3api 네임스페이스의 모든 S3 명령에 적용됩니다.

addressing_style

사용할 주소 지정 방식을 지정합니다. 이렇게 하면 버킷 이름이 호스트 이름에 있는지 아니면 의 일부인지 제어합니다URL. 유효 값은 path, virtualauto입니다. 기본값은 auto입니다.

Amazon S3 엔드포인트는 두 가지 방식으로 구성할 수 있습니다. 첫 번째는 virtual이라고 하는 방식으로 호스트 이름의 일부로 버킷 이름을 포함하고 있습니다. 예: https://bucketname.s3.amazonaws.com. 또는 path 스타일로 버킷 이름을 URI의 경로인 것처럼 취급합니다. 예를 들어 입니다https://s3.amazonaws.com/bucketname. 의 기본값은 를 사용하는 것입니다. autoCLI는 가능한 virtual 스타일을 사용하려고 하지만 필요한 경우 path 스타일로 돌아갑니다. 예를 들어 버킷 이름이 DNS 호환되지 않는 경우 버킷 이름은 호스트 이름의 일부가 될 수 없으며 경로에 있어야 합니다. auto를 사용하면 CLI가 이 조건을 감지하고 자동으로 path 스타일로 전환합니다. 주소 지정 스타일을 로 설정한 경우 path에서 AWS CLI 구성한 AWS 리전이 버킷의 리전과 일치하는지 확인해야 합니다.

payload_signing_enabled

Sigv4 페이로드에 SHA256 서명할지 여부를 지정합니다. 기본적으로 를 사용할 때 스트리밍 업로드(UploadPartPutObject)에는 비활성화됩니다HTTPS. 기본적으로 스트리밍 업로드(UploadPartPutObject)false의 경우 로 설정되지만 이 존재하고(기본적으로 생성됨) 엔드포인트ContentMD5에서 를 사용하는 경우에만 가능합니다HTTPS.

true로 설정하면 S3 요청은 사용자에 대해 계산되고 요청 서명에 포함된 SHA256 체크섬의 형태로 추가 콘텐츠 검증을 받습니다. false로 설정되어 있는 경우에는 체크섬이 계산되지 않습니다. 이 옵션을 비활성화하는 것이 체크섬 계산에서 생성된 성능 오버헤드를 줄이는 데 유용할 수 있습니다.

use_accelerate_endpoint

모든 s3s3api 명령에서 Amazon S3 Accelerate 엔드포인트를 사용합니다. 기본값은 false입니다. 이 옵션은 use_dualstack_endpoint 설정에서 함께 사용할 수 없습니다.

true로 설정하면 는 모든 Amazon S3 요청을 의 S3 Accelerate 엔드포인트로 AWS CLI 전달합니다s3-accelerate.amazonaws.com. 이 엔드포인트를 사용하려면 버킷에서 S3 Accelerate를 사용하도록 활성화해야 합니다. 모든 요청은 가상의 버킷 주소 지정 방식(my-bucket.s3-accelerate.amazonaws.com)을 사용하여 전송됩니다. 엔드포인트에서 이러한 작업을 지원하지 않기 때문에 어떤 ListBuckets, CreateBucketDeleteBucket 요청도 S3 가속 엔드포인트로 전송되지 않습니다. --endpoint-url 또는 https://s3-accelerate.amazonaws.com 명령에서 http://s3-accelerate.amazonaws.com 파라미터가 s3 또는 s3api으로 설정되어 있는 경우에는 이 동작도 설정할 수 있습니다.

다음 설정은 s3 네임스페이스 명령 집합의 명령에만 적용됩니다.

max_bandwidth

Amazon S3의 데이터 업로드 및 다운로드에 사용할 수 있는 최대 대역폭을 지정합니다. 기본 값은 제한 없음입니다.

이 값은 S3 명령이 Amazon S3와 데이터를 주고 받는 데 사용할 수 있는 최대 대역폭을 제한합니다. 이 값은 업로드 및 다운로드에만 적용되고, 복사 또는 삭제 작업에는 적용되지 않습니다. 이 값은 초당 바이트로 표현됩니다. 이 값을 다음과 같이 형태로 지정할 수 있습니다.

  • 정수. 예를 들어 1048576은 초당 1MB로 최대 대역폭 사용량을 설정합니다.

  • 뒤에 속도 접미사가 붙는 정수. KB/s, MB/s 또는 GB/s를 사용하여 속도 접미사를 지정할 수 있습니다. 예, 300KB/s, 10MB/s.

일반적으로 먼저 max_concurrent_requests를 낮춰서 대역폭 사용량을 낮추려고 시도하는 것이 좋습니다. 이렇게 해도 원하는 속도로 대역폭 사용량이 적절하게 제한되지 않는 경우에는 대역폭 사용량을 추가로 제한하는 데 사용되는 max_bandwidth 설정을 사용할 수 있습니다. 이는 max_concurrent_requests가 현재 실행 중인 스레드의 수를 제어하기 때문입니다. 대신에 먼저 max_bandwidth 값을 낮추되, max_concurrent_requests 설정은 높게 놔두면 스레드가 불필요하게 대기해야 하는 결과가 발생할 수 있습니다. 이로 인해 리소스 사용량과 연결 제한 시간이 초과할 수 있습니다.

max_concurrent_requests

동시 요청의 최대 수를 지정합니다. 기본값은 10입니다.

aws s3 이전 명령은 멀티스레드가 됩니다. 언제든지 여러 개의 Amazon S3 요청이 실행 중일 수 있습니다. 예를 들어 명령을 사용하여 S3 버킷aws s3 cp localdir s3://bucket/ --recursive에 파일을 업로드하는 경우 는 파일 localdir/file1, localdir/file2및 를 병렬localdir/file3로 업로드할 AWS CLI 수 있습니다. max_concurrent_requests 설정은 동시에 실행 가능한 이전 작업의 최대 수를 지정합니다.

몇 가지 이유에서 이 값을 변경해야 할 수도 있습니다.

  • 이 값을 줄이기 - 어떤 환경에서는 기본 설정된 10개의 동시 요청으로 인해 시스템이 압도될 수 있습니다. 이로 인해 연결 제한 시간이 발생하거나 시스템의 응답 속도가 느려질 수 있습니다. 이 값을 낮추면 S3 이전 명령에서 리소스를 덜 사용하게 됩니다. 하지만 S3 이전이 완료되는 데 더 많은 시간이 소요될 수 있다는 단점이 있습니다. 대역폭을 제한하기 위한 도구를 사용하는 경우에는 이 값을 낮추는 것이 필수로 요구될 수 있습니다.

  • 이 값을 늘리기 - 어떤 경우에는 필요한 만큼 네트워크 대역폭을 사용하여 가능한 한 신속하게 Amazon S3 전송을 완료하고 싶을 수 있습니다. 이런 경우에는 기본적인 동시 요청 수로는 사용 가능한 모든 네트워크 대역폭을 활용하기에 충분하지 않을 수 있습니다. 이 값을 늘리면 Amazon S3 이전을 완료하는 데 소요되는 시간을 줄일 수 있습니다.

max_queue_size

작업 대기열의 최대 작업 수를 지정합니다. 기본값은 1000입니다.

는 AWS CLI 내부적으로 Amazon S3 태스크를 대기열에 넣는 모델을 사용하며, 이 작업은 숫자가 로 제한된 소비자가 실행합니다max_concurrent_requests. 태스크는 보통 단일 Amazon S3 작업에 매핑됩니다. 예를 들어 작업은 PutObjectTask, GetObjectTask 또는 UploadPartTask가 될 수 있습니다. 작업이 대기열에 추가되는 속도는 소비자가 작업을 완료하는 속도보다 훨씬 빠를 수 있습니다. 무한 증가를 피하기 위해 작업 대기열 크기가 특정 크기로 제한됩니다. 이 설정은 최대 크기의 값을 변경합니다.

일반적으로 이 설정을 변경할 필요는 없습니다. 이 설정은 AWS CLI 가 실행해야 한다고 인식하는 작업 수에도 해당합니다. 즉, 기본적으로 는 앞으로 1,000개의 작업만 볼 AWS CLI 수 있습니다. 이 값을 늘리면 대기 속도가 작업 완료 속도보다 빠르다고 가정할 때 가 필요한 총 작업 수를 더 빠르게 알 AWS CLI 수 있습니다. max_queue_size가 커질수록 메모리가 더 필요하게 된다는 단점이 있습니다.

multipart_chunksize

가 개별 파일의 멀티파트 전송에 AWS CLI 사용하는 청크 크기를 지정합니다. 기본값은 8MB이며 최소 5MB입니다.

파일 전송이 multipart_threshold를 초과하면 AWS CLI 는 파일을 이 크기의 청크로 분할합니다. multipart_threshold와 동일한 구문을 사용하여, 즉 정수 형태의 바이트 수를 사용하거나 크기와 접미사를 사용하는 방법으로 이 값을 지정할 수 있습니다.

multipart_threshold

개별 파일의 멀티파트 전송에 AWS CLI 사용하는 크기 임계값을 지정합니다. 기본값은 8MB입니다.

파일을 업로드, 다운로드 또는 복사할 때 파일이 이 크기를 초과하면 Amazon S3 명령이 멀티파트 작업으로 전환됩니다. 이 값을 두 가지 방법으로 지정할 수 있습니다.

  • 먼저 바이트 단위의 파일 크기입니다. 예: 1048576.

  • 두 번째는 크기 접미사가 포함된 파일 크기입니다. KB, MB, GB 또는 TB를 사용할 수 있습니다. 예: 10MB, 1GB.

    참고

    S3은 멀티파트 작업에 사용할 수 있는 유효 값에 제약을 둘 수 있습니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서에서 S3 멀티파트 업로드 설명서를 참조하세요.