

# AWS CLI의 구성 및 보안 인증 파일 설정
<a name="cli-configure-files"></a>

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

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

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

**참고**  
보안 인증 설정에 대한 자세한 내용은 [AWS CLI에 대한 인증 및 액세스 보안 인증](cli-chap-authentication.md) 섹션을 참조하세요.

**Topics**
+ [구성 및 보안 인증 파일의 형식](#cli-configure-files-format)
+ [구성 설정이 저장되는 장소](#cli-configure-files-where)
+ [명명된 프로파일 사용](#cli-configure-files-using-profiles)
+ [구성 설정 지정 및 보기](#cli-configure-files-methods)
+ [새 구성 및 보안 인증 설정 명령 예제](#cli-configure-files-examples)
+ [지원되는 `config` 파일 설정](#cli-configure-files-settings)

## 구성 및 보안 인증 파일의 형식
<a name="cli-configure-files-format"></a>

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

이 파일은 다음 형식을 사용하는 일반 텍스트 파일입니다.
+ 섹션 이름은 괄호[ ]로 묶여 있습니다(예: `[default]`, `[profile user1]`, `[sso-session]`).
+ 섹션의 모든 항목은 `setting_name=value`와 같은 일반적인 형식을 취합니다.
+ 줄은 해시 문자(`#`)로 시작하여 주석 처리할 수 있습니다.

**`config` 및 `credentials` 파일에는 다음과 같은 섹션 유형이 포함됩니다.**
+ [`profile`](#cli-configure-files-format-profile)
+ [`sso-session`](#cli-configure-files-format-sso-session)
+ [`services`](#cli-configure-files-format-services)

### 섹션 유형: `profile`
<a name="cli-configure-files-format-profile"></a>

파일에 따라 프로파일 섹션 이름은 다음 형식을 사용합니다.
+ **Config 파일:** `[default]` `[profile user1]`
+ **보안 인증 파일:** `[default]` `[user1]`

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

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

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

------
#### [ IAM Identity Center (SSO) ]

AWS IAM Identity Center에 대한 예제입니다. 자세한 내용은 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md) 섹션을 참조하세요.

**보안 인증 파일**

`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의 기존 방법을 위한 것입니다. 자세한 내용은 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md) 섹션을 참조하세요.

**보안 인증 파일**

`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에 대한 단기 자격 증명으로 인증](cli-authentication-short-term.md) 섹션을 참조하세요.

**보안 인증 파일**

```
[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`는 동일한 보안 인증을 차용한 다음 새 역할을 맡습니다. 자세한 내용은 [AWS CLI에서 IAM 역할 사용](cli-configure-role.md) 섹션을 참조하세요.

**보안 인증 파일**

`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 인스턴스 메타데이터에서 가져온 보안 인증에 대한 예입니다. 자세한 내용은 [AWS CLI에서 Amazon EC2 인스턴스 메타데이터의 자격 증명 사용](cli-configure-metadata.md) 섹션을 참조하세요.

**보안 인증 파일**

`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](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)과 같은 보안 인증 공급자를 통한 페더레이션을 사용하세요.

이 예는 AWS Identity and Access Management의 장기 보안 인증을 위한 것입니다. 자세한 내용은 [IAM 사용자 자격 증명을 사용한 인증](cli-authentication-user.md) 섹션을 참조하세요.

**보안 인증 파일**

```
[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 사용자 자격 증명을 사용한 인증](cli-authentication-user.md)을 참조하세요.

### 섹션 유형: `sso-session`
<a name="cli-configure-files-format-sso-session"></a>

`config` 파일의 `sso-session` 섹션은 SSO 액세스 토큰을 획득하기 위한 구성 변수를 그룹화하는 데 사용되며, 이를 사용하여 AWS 보안 인증 정보를 얻을 수 있습니다. 다음 설정이 사용됩니다.
+ **(필수)** `sso\$1start\$1url`
+ **(필수)** `sso\$1region`
+ `sso\$1account\$1id`
+ `sso\$1role\$1name`
+ `sso\$1registration\$1scopes`

`sso-session` 섹션을 정의하고 프로파일에 연결합니다. `sso-session` 섹션 내에서 `sso_region` 및 `sso_start_url`을 설정해야 합니다. 일반적으로 SDK가 SSO 보안 인증 정보를 요청할 수 있도록 `profile` 섹션에서 `sso_account_id` 및 `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_account_id` 및 `sso_role_name`은 SSO 토큰 구성의 모든 시나리오에 필수적이지는 않습니다. 애플리케이션이 보유자 인증 정보를 지원하는 AWS 서비스만 사용하는 경우 기존 AWS 보안 인증 정보는 필요하지 않습니다. 보유자 인증은 보유자 토큰이라는 보안 토큰을 사용하는 HTTP 인증 체계입니다. 이 시나리오에서는 `sso_account_id` 및 `sso_role_name`은 필수가 아닙니다. 해당 AWS 서비스가 보유자 토큰 인증을 지원하는지 확인하려면 해당 서비스의 개별 가이드를 참조하세요.

또한 등록 범위는 `sso-session`의 일부로 구성할 수 있습니다. 범위는 애플리케이션의 사용자 계정 액세스를 제한하는 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` 디렉터리 아래의 디스크에 캐시됩니다.

이 구성 유형에 대한 자세한 내용은 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md)을 참조하세요.

### 섹션 유형: `services`
<a name="cli-configure-files-format-services"></a>

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

```
[profile dev]
services = my-services
```

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

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

```
[profile dev]
services = my-services

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

서비스별 엔드포인트에 대한 자세한 내용은 [AWS CLI에서 엔드포인트 사용](cli-configure-endpoints.md)을 참조하세요.

프로파일에 역할 기반 보안 인증 정보가 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
```

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

## 구성 설정이 저장되는 장소
<a name="cli-configure-files-where"></a>

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

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

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

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

## 명명된 프로파일 사용
<a name="cli-configure-files-using-profiles"></a>

명시적으로 정의된 프로파일이 없는 경우 해당 `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](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/set_1)`을 사용하면 사용되는 값이 변경되어 현재 명령 프롬프트 세션이 종료될 때까지 또는 변수를 다른 값으로 설정할 때까지 유지됩니다.

환경 변수를 설정하는 데 [https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/setx](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/setx)를 사용하면 명령 실행 후 생성한 모든 명령 셸의 값이 변경됩니다. 명령을 실행하는 시점에 이미 실행 중인 다른 명령 셸에는 영향이 미치지 ***않습니다***. 이러한 변경 영향을 확인하려면 명령 셸을 닫고 다시 시작합니다.

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

------

## 구성 설정 지정 및 보기
<a name="cli-configure-files-methods"></a>

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

**`[aws configure](https://docs.aws.amazon.com/cli/v1/reference/configure/index.html)`**  
보안 인증 정보, 리전 및 출력 형식을 빠르게 설정하고 보려면 이 명령을 실행합니다. 다음 예제는 샘플 값을 보여줍니다.  

```
$ 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](https://docs.aws.amazon.com/cli/v1/reference/configure/set.html)`**  
`aws configure set`를 사용하여 보안 인증 또는 구성 설정을 지정할 수 있습니다. `--profile` 설정으로 보거나 수정하려는 프로파일을 지정합니다.  
예를 들어 다음 명령은 `region`프로파일에서 `integ`을 설정합니다.  

```
$ aws configure set region us-west-2 --profile integ
```
설정을 제거하려면 텍스트 편집기에서 `config` 및 `credentials` 파일의 설정을 수동으로 삭제합니다.

**[https://docs.aws.amazon.com/cli/v1/reference/configure/get.html](https://docs.aws.amazon.com/cli/v1/reference/configure/get.html)**  
`aws configure get`을 사용하여 설정한 보안 인증 또는 구성 설정을 검색할 수 있습니다. `--profile` 설정으로 보거나 수정하려는 프로파일을 지정합니다.  
예를 들어 다음 명령은 `region`프로파일에서 `integ` 설정을 검색합니다.  

```
$ aws configure get region --profile integ
us-west-2
```
출력이 비어 있으면 설정이 명시적으로 지정되지 않고 기본값을 사용합니다.

**[https://docs.aws.amazon.com/cli/latest/reference/reference/configure/import.html](https://docs.aws.amazon.com/cli/latest/reference/reference/configure/import.html)**  
IAM 웹 콘솔에서 생성된 `CSV` 보안 인증을 가져옵니다. 이는 IAM ID 센터에서 생성된 보안 인증에는 해당되지 않습니다. IAM ID 센터를 사용하는 고객은 AWS 구성 SSO를 사용해야 합니다. 사용자 이름과 일치하는 프로파일 이름을 이용해 CSV 파일을 가져옵니다. CSV 파일에는 다음 헤더가 포함되어야 합니다.  
+ 사용자 이름
+ 액세스 키 ID
+ 비밀 액세스 키
초기 키 페어 생성 중에 **.csv 파일 다운로드(Download .csv file)** 대화 상자를 닫으면 대화 상자를 닫은 후 비밀 액세스 키에 액세스할 수 없습니다. `.csv` 파일이 있어야 하는 경우 필요한 헤더와 저장된 키 페어 정보를 사용하여 파일을 직접 만들어야 합니다. 키 페어 정보에 액세스할 수 없는 경우 새 키 페어를 생성해야 합니다.

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

**[https://docs.aws.amazon.com/cli/v1/reference/configure/list.html](https://docs.aws.amazon.com/cli/v1/reference/configure/list.html)**  
구성 데이터를 나열하려면 `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
```

**[https://docs.aws.amazon.com/cli/v1/reference/configure/list-profiles.html](https://docs.aws.amazon.com/cli/v1/reference/configure/list-profiles.html)**  
모든 프로파일 이름을 나열하려면 `aws configure list-profiles` 명령을 사용합니다.  

```
$ aws configure list-profiles
default
test
```

**`aws configure mfa-login`**  
이 명령을 실행하여 지정된 프로필에서 다중 인증(MFA) 및 IAM 사용자 자격 증명과 함께 사용할 새 프로필을 구성합니다. 프로필이 지정되지 않은 경우 MFA는 `default` 프로필을 기반으로 합니다. 기본 프로필이 구성되지 않은 경우 `mfa-login` 명령은 MFA 정보를 요청하기 전에 AWS 자격 증명을 묻는 메시지를 표시합니다. 다음 명령 예제에서는 기본 구성을 사용하고 MFA 프로필을 생성합니다.  

```
$ aws configure mfa-login
MFA serial number or ARN: arn:aws:iam::123456789012:mfa/MFADeviceName
MFA token code: 123456
Profile to update [session-MFADeviceName]:
Temporary credentials written to profile 'session-MFADeviceName'
Credentials will expire at 2023-05-19 18:06:10 UTC
To use these credentials, specify --profile session-MFADeviceName when running AWS CLI commands
```
기존 프로필을 업데이트하려면 `--update-profile` 파라미터를 사용합니다.  

```
$ aws configure mfa-login --profile myprofile --update-profile mfaprofile
MFA token code: 123456
Temporary credentials written to profile 'mfaprofile'
Credentials will expire at 2023-05-19 18:06:10 UTC
To use these credentials, specify --profile mfaprofile when running AWS CLI commands
```
이 명령은 현재 하드웨어 또는 소프트웨어 기반 일회용 암호(OTP) 인증자만 지원합니다. 패스키 및 U2F 디바이스는 현재 이 명령에서 지원되지 않습니다.  
IAM으로 MFA 사용에 대한 자세한 내용은 *AWS Identity and Access Management IAM 사용 설명서*의 [IAM의 AWS 다중 인증](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html)을 참조하세요.

**`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`**  
`credentials` 및 `config` 파일의 `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
```

**`aws configure export-credentials`**  
이 명령을 실행하면 현재 설정된 자격 증명을 지정된 형식으로 내보낼 수 있습니다. 기본적으로 이 명령은 AWS SDK 및 Tools 자격 증명 형식에서 지원하는 JSON 형식인 `process` 형식으로 기본 자격 증명을 내보냅니다.  

```
$ aws configure export-credentials
{
  "Version": 1,
  "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
  "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
}
```
특정 프로파일과 형식을 내보내려면 `--profile` 및 `--format` 옵션을 사용합니다. 형식 옵션은 다음과 같습니다.  
+ **(기본값)****`process`** - AWS SDK 및 Tools `credential_process` 구성에서 지원하는 JSON 형식입니다.
+ **`env`** ‐ 내보내는 쉘 형식의 환경 변수입니다.
+ **`env-no-export`** ‐ 쉘 형식의 내보내지 않는 환경 변수입니다.
+ **`powershell`** ‐ PowerShell 형식의 환경 변수입니다.
+ **`windows-cmd`** ‐ Windows 명령줄 형식의 환경 변수입니다.
다음 예시에서는 `user1` 프로파일을 내보내는 쉘 형식으로 내보냅니다.  

```
$ aws configure export-credentials --profile user1 --format env
export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
```

## 새 구성 및 보안 인증 설정 명령 예제
<a name="cli-configure-files-examples"></a>

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

------
#### [ Console sessions as short-term credentials ]

이 예제에서는 기존 콘솔 자격 증명을 `aws login` 명령과 함께 사용할 수 있습니다. 이 로그인 방법은 초기 계정 설정 중에 생성된 루트 자격 증명, IAM 사용자 또는 자격 증명 공급자의 페더레이션 자격 증명과 함께 사용할 수 있습니다. 자세한 내용은 [콘솔 자격 증명을 사용한 AWS 로컬 개발을 위한 로그인](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sign-in.html)을 참조하세요.

```
$ aws login
No AWS region has been configured. The AWS region is the geographic location of your AWS resources. 

If you've used AWS before and already have resources in your account, tell us which region they were 
created in. If you haven't created resources in your account before, you can pick the region closest to you: 
https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html. You are able to change 
the region in the CLI at any time with the command `aws configure set region NEW_REGION`.

AWS Region [us-east-1]: us-east-1
Attempting to open the login page for `us-east-1` in your default browser. If the browser does not open, 
use the following URL to complete your login:

https://us-east-1.signin.aws.amazon.com/v1/authorize<abbreviated>

If you cannot connect to this URL, make sure that you have specified a valid region.

Waiting for login...

Logged in with role `arn:aws:sts::012345678910:user/iam-user`, and configured profile 
`default` to use `us-east-1`. This session will expire on October 14, 2025 at 2:04 PST. After this time, you 
can renew your session with `aws login`.
```

------
#### [ IAM Identity Center (SSO) ]

이 예제는 `aws configure sso` 마법사를 사용한 AWS IAM Identity Center를 위한 것입니다. 자세한 내용은 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md) 섹션을 참조하세요.

```
$ 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를 사용하려면 세션 이름을 비워 두세요. 자세한 내용은 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md) 섹션을 참조하세요.

```
$ 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에 대한 단기 자격 증명으로 인증](cli-authentication-short-term.md) 섹션을 참조하세요.

```
$ 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` 명령을 사용하여 각 값을 설정합니다. 자세한 내용은 [AWS CLI에서 IAM 역할 사용](cli-configure-role.md) 섹션을 참조하세요.

```
$ 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` 명령을 사용하여 각 값을 설정합니다. 자세한 내용은 [AWS CLI에서 Amazon EC2 인스턴스 메타데이터의 자격 증명 사용](cli-configure-metadata.md) 섹션을 참조하세요.

```
$ 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](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)과 같은 보안 인증 공급자를 통한 페더레이션을 사용하세요.

이 예는 AWS Identity and Access Management의 장기 보안 인증을 위한 것입니다. 자세한 내용은 [IAM 사용자 자격 증명을 사용한 인증](cli-authentication-user.md) 섹션을 참조하세요.

```
$ 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` 파일 설정
<a name="cli-configure-files-settings"></a>

**Topics**
+ [Global settings(글로벌 설정)](#cli-configure-files-global)
+ [S3 사용자 지정 명령 설정](#cli-configure-files-s3)

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

### Global settings(글로벌 설정)
<a name="cli-configure-files-global"></a>

** `account_id_endpoint_mode` **  
지원되는 AWS 서비스에 대한 호출에 AWS 계정 기반 엔드포인트 ID를 사용할지 여부를 지정합니다. 계정 기반 엔드포인트에 대한 자세한 내용은 [계정 기반 엔드포인트](cli-configure-endpoints.md#endpoints-accountid) 섹션을 참조하시기 바랍니다.  
이 설정에서는 다음을 설정할 수 있습니다.  
+ **(기본값)** **`preferred`** - 엔드포인트에는 사용 가능한 경우 계정 ID가 포함되어야 합니다.
+ **`disabled`** - 확인된 엔드포인트에는 계정 ID가 포함되지 않습니다.
+ **`required`** - 엔드포인트에는 계정 ID가 포함되어야 합니다. 계정 ID를 사용할 수 없는 경우 SDK에서 오류가 발생합니다.
`AWS\$1ACCOUNT\$1ID\$1ENDPOINT\$1MODE` 환경 변수로 재정의할 수도 있습니다. 계정 기반 엔드포인트를 사용하려면 `AWS\$1ACCOUNT\$1ID` 환경 변수 또는 `aws\$1account\$1id` 설정에서 ID를 설정해야 합니다.  

```
account_id_endpoint_mode = preferred
```
**엔드포인트 우선순위**  
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

** `aws_access_key_id` **  
명령 요청을 인증하기 위한 보안 인증의 일부로 사용되는 AWS 액세스 키를 지정합니다. 이 키는 `config` 파일에 저장될 수도 있지만, `credentials` 파일에 저장하는 것이 좋습니다.  
`AWS_ACCESS_KEY_ID` 환경 변수로 재정의할 수도 있습니다. 명령줄 옵션으로 액세스 키 ID를 지정할 수는 없습니다.  

```
aws_access_key_id = AKIAIOSFODNN7EXAMPLE
```

** `aws_account_id` **  
지원되는 AWS 서비스에 대한 호출에 사용할 AWS 계정 기반 엔드포인트 ID를 지정합니다. 계정 기반 엔드포인트에 대한 자세한 내용은 [계정 기반 엔드포인트](cli-configure-endpoints.md#endpoints-accountid) 섹션을 참조하시기 바랍니다.  
`AWS\$1ACCOUNT\$1ID` 환경 변수로 재정의할 수도 있습니다. 이 설정을 사용하려면 `AWS\$1ACCOUNT\$1ID\$1ENDPOINT\$1MODE` 환경 변수 또는 `account\$1id\$1endpoint\$1mode` 설정을 `preferred` 또는 `required`로 설정해야 합니다.  

```
aws_account_id = 123456789EXAMPLE
```
**엔드포인트 우선순위**  
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

**`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`**  
SSL 인증서를 확인하는 데 사용되는 CA 인증서 번들(확장자가 `.pem`인 파일)을 지정합니다.  
`AWS\$1CA\$1BUNDLE` 환경 변수나 `--ca-bundle` 명령줄 옵션으로 재정의할 수도 있습니다.  

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

**`cli_auto_prompt`**  
AWS CLI 버전 2에 대한 자동 프롬프트를 활성화합니다. 두 가지 설정을 사용할 수 있습니다.  
+ **`on`**은 `aws` 명령을 실행할 때마다 전체 자동 프롬프트 모드를 사용합니다. 여기에는 전체 명령 또는 불완전한 명령 다음에 **Enter** 키를 누르는 것이 포함됩니다.

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

  ```
  cli_auto_prompt = on-partial
  ```
`aws\$1cli\$1auto\$1prompt` 환경 변수 또는 `--cli-auto-prompt` 및 `--no-cli-auto-prompt` 명령줄 파라미터를 사용하여 이 설정을 재정의할 수 있습니다.  
AWS CLI 버전 2 자동 프롬프트 기능에 대한 자세한 내용은 [AWS CLI에서 명령 프롬프트 활성화 및 사용](cli-usage-parameters-prompting.md) 섹션을 참조하세요.

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

**`cli_help_output`**  
버전 `2.31.0` 이후 `help` 명령에 대한 표시는 `cli_help_output` 설정에 의해 구성되며 다음 값을 갖습니다.  
+  **(기본값)** `terminal` - 터미널에서 맨 페이지를 엽니다.
+ `browser` ‐ 기본 브라우저에서 로컬 HTML 파일로 맨 페이지를 엽니다. 기본 브라우저를 열면 터미널에 알림이 인쇄되고 AWS CLI가 브라우저를 열 수 없는 경우 오류 메시지가 표시됩니다.
+ `url` ‐ 설치한 AWS CLI 버전의 온라인 AWS CLI 참조 가이드에 URL을 인쇄합니다. `AWS_PAGER` 환경 변수와 같은 클라이언트 측 페이징에 대한 설정이 준수됩니다.

```
cli_help_output = browser
```
`help` 명령에 대한 자세한 내용은 [AWS CLI에 대한 도움말 및 리소스 액세스](cli-usage-help.md) 섹션을 참조하세요.

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

```
cli_history = enabled
```
기록을 나열하려면 `aws history list` 명령을 사용하고 세부 정보를 보려면 `aws history show` 명령에 결과 `command_ids`를 사용할 수 있습니다. 자세한 내용은 *AWS CLI 참조 가이드*의 [https://docs.aws.amazon.com/cli/latest/reference/history/index.html](https://docs.aws.amazon.com/cli/latest/reference/history/index.html) 섹션을 참조하세요.

**`cli_pager`**  
출력에 사용할 페이저 프로그램을 지정합니다. 기본적으로 AWS CLI 버전 2는 운영 체제의 기본 페이저 프로그램을 통해 모든 출력을 반환합니다.  
AWS\$1PAGER 환경 변수로 재정의할 수도 있습니다.  

```
cli_pager=less
```

**`cli_timestamp_format`**  
타임스탬프 값의 출력 형식을 지정합니다. 다른 값 중 하나를 지정할 수 있습니다.  
+ **iso8601** – AWS CLI 버전 2의 기본값입니다. 지정된 경우 AWS CLI는 [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html)에 따라 출력에 있는 모든 타임스탬프의 형식을 변경합니다. ISO 8601 형식의 타임스탬프는 다음 예제와 같습니다. 다음 예시에서는 날짜 및 시간을 `T`로 구분하고 해당 시간 뒤에 `Z`를 포함하여 시간의 형식을 지정하는 방법을 보여줍니다.

  ```
  YYYY-MM-DDThh:mm:ssZ
  ```

  다음 예시에서는 이전 형식을 사용하는 타임스탬프를 보여줍니다.

  ```
  2024-05-08T15:16:43Z
  ```
+ **wire** – AWS CLI 버전 1의 기본값입니다. 지정된 경우 AWS CLI는 HTTP 쿼리 응답에서 수신된 것과 똑같이 모든 타임스탬프 값을 표시합니다.
이 설정은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다. 이 설정은 타임스탬프 입력을 변경하지 않고 출력 형식만 변경합니다.  

```
cli_timestamp_format = iso8601
```

**`credential\$1process`**  
이 명령에서 사용할 인증 보안 인증을 생성 또는 수신하기 위해 AWS CLI가 실행하는 외부 명령을 지정합니다. 이 명령은 특정 형식으로 보안 인증을 반환해야 합니다. 이 설정을 사용하는 방법에 대한 자세한 내용은 [AWS CLI에서 외부 프로세스를 통해 자격 증명 소싱](cli-configure-sourcing-external.md) 섹션을 참조하세요.  
이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.  

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

**`credential\$1source`**  
AWS CLI에서 `role_arn` 파라미터로 지정된 역할을 수임하는 데 사용하는 보안 인증을 찾을 수 있는 위치를 지정하기 위해 Amazon EC2 인스턴스 또는 컨테이너 내에서 사용됩니다. `source_profile`과 `credential_source` 모두를 동일한 프로파일에서 지정할 수 없습니다.  
이 파라미터는 다음 세 가지 값 중 하나를 가질 수 있습니다.  
+ **Environment** – AWS CLI가 환경 변수의 소스 보안 인증을 검색하도록 지정합니다.
+ **Ec2InstanceMetadata** – AWS CLI가 [EC2 인스턴스 프로파일](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html)에 연결된 IAM 역할을 사용하여 소스 보안 인증을 가져오도록 지정합니다.
+ **EcsContainer** – AWS CLI가 ECS 컨테이너에 연결된 IAM 역할을 소스 보안 인증으로 사용하도록 지정합니다.

```
credential_source = Ec2InstanceMetadata
```

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

**`endpoint_url`**  
모든 서비스 요청에 사용되는 엔드포인트를 지정합니다. `config` 파일의 [`services`](#cli-configure-files-format-services) 섹션에서 이 설정을 사용하면 엔드포인트가 지정된 서비스에 대해서만 사용됩니다. 자세한 내용은 [모든 AWS 서비스 서비스에 대한 글로벌 엔드포인트 설정](cli-configure-endpoints.md#endpoints-global) 섹션을 참조하세요.  
다음 예제에서는 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는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

**`ignore_configure_endpoint_urls`**  
사용 설정된 경우 AWS CLI는 `config` 파일에 지정된 모든 사용자 지정 엔드포인트 구성을 무시합니다. 유효 값은 `true` 및 `false`입니다.  

```
ignore_configure_endpoint_urls = true
```
**엔드포인트 우선순위**  
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

**`external\$1id`**  
타사에서 고객 계정의 역할을 수임하는 데 사용하는 고유한 식별자를 지정합니다. 이는 `ExternalId` 작업의 `AssumeRole` 파라미터로 매핑됩니다. 이 파라미터는 역할에 대한 신뢰 정책에서 `ExternalId`에 값을 지정하는 경우에만 필요합니다. 자세한 내용은 *IAM 사용 설명서*의 [AWS 리소스에 대한 액세스 권한을 서드 파티에 부여할 때 외부 ID를 사용하는 방법](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)을 참조하세요.

**`max\$1attempts`**  
AWS CLI 재시도 핸들러에서 사용하는 최대 재시도 시도 횟수 값을 지정합니다. 여기서 초기 호출은 사용자가 제공한 `max_attempts` 값에 포함됩니다.  
`AWS_MAX_ATTEMPTS` 환경 변수를 사용하여 이 값을 재정의할 수 있습니다.  

```
max_attempts = 3
```

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

**`output`**  
이 프로파일을 사용하여 요청된 명령의 기본 출력 형식을 지정합니다. 다음 값 중 하나를 지정할 수 있습니다.  
+ **[`json`](cli-usage-output-format.md#json-output)** - 출력은 [JSON](https://json.org/) 문자열로 형식이 지정됩니다.
+  **[`yaml`](cli-usage-output-format.md#yaml-output)** - 출력은 [YAML](https://yaml.org/) 문자열로 형식이 지정됩니다.
+ **[`yaml-stream`](cli-usage-output-format.md#yaml-stream-output)** - 출력은 스트리밍되고 [YAML](https://yaml.org/) 문자열로 형식이 지정됩니다. 스트리밍을 통해 대용량 데이터 유형을 빠르게 처리할 수 있습니다.
+ **[`text`](cli-usage-output-format.md#text-output)** - 출력은 여러 줄의 탭으로 구분된 문자열 값으로 형식이 지정됩니다. 출력을 `grep`, `sed` 또는 `awk`와 같은 텍스트 프로세서로 전달하는 데 사용할 수 있습니다.
+ **[`table`](cli-usage-output-format.md#table-output)** - 출력은 셀 테두리를 형성하기 위해 \$1\$1- 문자를 사용하여 표로 형식이 지정됩니다. 일반적으로 읽기는 쉽지만 프로그래밍 방식으로는 유용하지 않은 ‘인간 친화적’ 형식으로 정보를 표시합니다.
+ **[`off`](cli-usage-output-format.md#off-output)** - 명령의 모든 표준 출력(stdout)을 숨깁니다. 이는 출력을 처리하지 않고 명령의 종료 코드만 확인하면 되는 자동화 스크립트 및 CI/CD 파이프라인에서 유용합니다.
`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 리전 및 엔드포인트](https://docs.aws.amazon.com/general/latest/gr/rande.html)에 나열된 대로 선택한 서비스에서 사용할 수 있는 모든 리전 코드를 지정할 수 있습니다.
+ `aws_global`을 사용하면 리전 엔드포인트 외에 AWS Security Token Service (AWS STS) 및 Amazon Simple Storage Service(Amazon S3)와 같이 글로벌 엔드포인트를 지원하는 서비스에 글로벌 엔드포인트를 지정할 수 있습니다.
`AWS_REGION` 환경 변수, `AWS_DEFAULT_REGION` 환경 변수 또는 `--region` 명령줄 옵션을 사용하여 이 값을 재정의할 수 있습니다.  

```
region = us-west-2
```

**`request_checksum_calculation`**  
요청 페이로드에 대한 체크섬이 계산되는 시기를 지정하며, 다음과 같은 옵션이 있습니다.  
+ `when_supported` – **(기본값)** 요청 페이로드 체크섬은 작업이 서비스 모델에서 체크섬 알고리즘을 지정하거나 요청 체크섬이 필요할 때 계산됩니다.
+ `when_required` - 요청 페이로드 체크섬은 작업에 요청 체크섬이 필요하거나 사용자가 AWS 서비스에서 모델링한 `requestAlgorithmMember`를 제공할 때 계산됩니다.

```
request_checksum_calculation = when_supported
```
환경 변수 [`AWS_REQUEST_CHECKSUM_CALCULATION`](cli-configure-envvars.md#envvars-list-AWS_REQUEST_CHECKSUM_CALCULATION)이 이 설정을 재정의합니다.

**`response_checksum_validation`**  
응답 페이로드에 대한 체크섬 검증이 수행되는 시기를 지정하며, 다음과 같은 옵션이 있습니다.  
+ `when_supported` – **(기본값)** 응답 페이로드 체크섬 검증은 작업이 AWS CLI가 지원하는 서비스 모델에서 응답 알고리즘을 지정할 때 수행됩니다.
+ `when_required` – 응답 페이로드 체크섬 검증은 작업이 AWS CLI가 지원하는 서비스 모델에서 응답 알고리즘을 지정하고 작업 입력에서 모델링된 `requestValidationModeMember`를 `ENABLED`로 설정할 때 수행됩니다.

```
response_checksum_validation = when_supported
```
환경 변수 [`AWS_RESPONSE_CHECKSUM_VALIDATION`](cli-configure-envvars.md#envvars-list-AWS_RESPONSE_CHECKSUM_VALIDATION)이 이 설정을 재정의합니다.

**`retry\$1mode`**  
AWS CLI에 사용될 재시도 모드를 지정합니다. `standard`(기본값), `legacy`(기본값) 및 `adaptive`, 이렇게 3가지 재시도 모드를 사용할 수 있습니다. 재시도에 대한 자세한 내용은 [AWS CLI에서 AWS CLI 재시도](cli-configure-retries.md)을 참조하세요.  
`AWS_RETRY_MODE` 환경 변수를 사용하여 이 값을 재정의할 수 있습니다.  

```
retry_mode = standard
```

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

```
role_arn = arn:aws:iam::123456789012:role/role-name
```
환경 변수 [`AWS_ROLE_ARN`](cli-configure-envvars.md#envvars-list-AWS_ROLE_ARN)이 이 설정을 재정의합니다.  
웹 보안 인증 사용에 대한 자세한 내용은 [웹 자격 증명을 사용한 역할 수임](cli-configure-role.md#cli-configure-role-oidc) 단원을 참조하세요.

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

```
role_session_name = maria_garcia_role
```
환경 변수 [`AWS_ROLE_SESSION_NAME`](cli-configure-envvars.md#envvars-list-AWS_ROLE_SESSION_NAME)이 이 설정을 재정의합니다.  
웹 보안 인증 사용에 대한 자세한 내용은 [웹 자격 증명을 사용한 역할 수임](cli-configure-role.md#cli-configure-role-oidc) 섹션을 참조하세요.

**`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`](#cli-configure-files-format-services)을 참조하세요.  
환경 변수 [`AWS_ROLE_SESSION_NAME`](cli-configure-envvars.md#envvars-list-AWS_ROLE_SESSION_NAME)이 이 설정을 재정의합니다.  
웹 보안 인증 사용에 대한 자세한 내용은 [웹 자격 증명을 사용한 역할 수임](cli-configure-role.md#cli-configure-role-oidc) 섹션을 참조하세요.

**`sdk_ua_app_id`**  
여러 고객 애플리케이션에서 단일 AWS 계정을 사용하여 AWS 서비스를 호출할 수 있습니다. 애플리케이션 ID는 어떤 소스 애플리케이션이 AWS 서비스를 사용하여 일련의 호출을 수행했는지 식별합니다. AWS SDK와 서비스는 이 값을 고객 커뮤니케이션에 다시 표시하는 것 외에는 이 값을 사용하거나 해석하지 않습니다. 예를 들어, 이 값을 운영 이메일에 포함시켜 알림과 관련된 애플리케이션을 고유하게 식별할 수 있습니다.  
애플리케이션 ID는 최대 길이가 50자인 문자열입니다. 문자, 숫자 및 `! $ % & * + - . , ^ _ ` | ~` 등의 특수 문자가 허용됩니다. 기본적으로 값이 할당되지 않습니다.  

```
sdk_ua_app_id = prod1
```
[`AWS_SDK_UA_APP_ID`](cli-configure-envvars.md#envvars-list-AWS_SDK_UA_APP_ID) 환경 변수를 사용하여 이 설정을 덮어쓸 수 있습니다. 이 값은 명령줄 파라미터로 설정할 수 없습니다.

**`sigv4a_signing_region_set`**  
쉼표로 구분된 목록을 사용하여 SigV4a로 서명할 때 사용할 리전을 지정합니다. 이 변수가 설정되지 않은 경우 AWS CLI는 AWS 서비스에서 사용하는 기본값을 사용합니다. AWS 서비스에 기본값이 없는 경우 `*` 값을 사용하여 모든 리전에서 요청 서명이 유효합니다.  

```
sigv4a_signing_region_set = us-west-2, us-east-1
```
SigV4a에 대한 자세한 내용은 *IAM 사용 설명서*의 [AWS Signature Version 4 for API 요청](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)을 참조하세요.  
[`AWS_SIGV4A_SIGNING_REGION_SET`](cli-configure-envvars.md#envvars-list-AWS_SIGV4A_SIGNING_REGION_SET) 환경 변수를 사용하여 이 설정을 덮어쓸 수 있습니다. 이 값은 명령줄 파라미터로 설정할 수 없습니다.

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

```
source_profile = production-profile
```

**`sso\$1account\$1id`**  
연결된 IAM Identity Center 사용자에게 부여할 권한이 있는 IAM 역할이 포함된 AWS 계정 ID를 지정합니다.  
이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.  

```
sso_account_id = 123456789012
```

**`sso\$1region` **  
AWS 액세스 포털 호스트가 포함된 AWS 리전을 지정합니다. 이 값은 기본 CLI `region` 파라미터와 별개이며 다른 리전일 수 있습니다.  
이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.  

```
sso_region = us_west-2
```

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

```
sso_registration_scopes = sso:account:access
```

**`sso\$1role\$1name` **  
이 프로파일을 사용할 때 사용자의 권한을 정의하는 IAM 역할의 기억하기 쉬운 이름을 지정합니다.  
이 설정에는 환경 변수 또는 명령줄 옵션이 없습니다.  

```
sso_role_name = ReadAccess
```

**`sso\$1start\$1url`**  
조직의 AWS 액세스 포털을 가리키는 URL을 지정합니다. AWS CLI는 이 URL을 통해 IAM Identity Center 서비스와의 세션을 설정하여 사용자를 인증합니다. AWS 액세스 포털 URL을 찾으려면 다음 중 하나를 사용합니다.  
+ 초대 이메일을 엽니다. AWS 액세스 포털 URL이 나와 있습니다.
+ AWS IAM Identity Center 콘솔([https://console.aws.amazon.com/singlesignon/](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 심플 스토리지 서비스 사용 설명서*의 [Amazon S3 이중 스택 엔드포인트](https://docs.aws.amazon.com/AmazonS3/latest/userguide/dual-stack-endpoints.html) 사용을 참조하세요. 이중 스택 엔드포인트는 일부 리전에 사용할 수 있는 서비스입니다. 서비스 또는 AWS 리전에 대한 이중 스택 엔드포인트가 없는 경우 요청이 실패합니다. 유효한 설정은 `true` 및 `false`입니다. 이 옵션은 기본적으로 비활성화되어 있습니다. 자세한 내용은 [모든 AWS 서비스에 이중 스택 엔드포인트를 사용하도록 설정](cli-configure-endpoints.md#endpoints-dual-stack) 섹션을 참조하세요.  
 이 옵션은 `use_accelerate_endpoint` 설정에서 함께 사용할 수 없습니다.  
**엔드포인트 우선순위**  
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

**`use_fips_endpoint`**  
일부 AWS 서비스는 일부 AWS 리전에서 [FIPS(Federal Information Processing Standard) 140-2](https://aws.amazon.com/compliance/fips/)를 지원하는 엔드포인트를 제공합니다. AWS 서비스에서 FIPS를 지원하는 경우 이 설정은 AWS CLI에서 사용해야 하는 FIPS 엔드포인트를 지정합니다. 표준 AWS 엔드포인트와 달리 FIPS 엔드포인트에서는 FIPS 140-2를 준수하는 TLS 소프트웨어 라이브러리를 사용합니다. 이러한 엔드포인트는 미국 정부와 상호 작용하는 기업에 필요할 수 있습니다. 자세한 내용은 [모든 AWS 서비스에 FIPS 엔드포인트를 사용하도록 설정](cli-configure-endpoints.md#endpoints-fips) 단원을 참조하십시오.  
이 설정이 활성화되어 있지만 해당 서비스에 대한 FIPS 엔드포인트가 AWS 리전에 없는 경우 AWS 명령이 실패할 수 있습니다. 이 경우 `--endpoint-url` 옵션을 사용하여 명령에 사용할 엔드포인트를 수동으로 지정하거나 [서비스별 엔드포인트](cli-configure-endpoints.md#endpoints-service-specific)를 사용합니다.  
**엔드포인트 우선순위**  
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI는 이러한 엔드포인트 설정을 특정 순서로 확인하고 우선순위가 가장 높은 엔드포인트 설정을 사용합니다. 엔드포인트 우선순위 목록은 [엔드포인트 구성 및 설정 우선 순위](cli-configure-endpoints.md#endpoints-precedence) 섹션을 참조하시기 바랍니다.

**`web\$1identity\$1token\$1file`**  
보안 인증 공급자가 제공하는 OAuth 2.0 액세스 토큰 또는 OpenID Connect ID 토큰을 포함하는 파일의 경로를 지정합니다. AWS CLI에서 이 파일의 내용을 로드하고 해당 파일을 `WebIdentityToken` 작업에 대한 `AssumeRoleWithWebIdentity` 인수로 전달합니다.  
환경 변수 `AWS\$1WEB\$1IDENTITY\$1TOKEN\$1FILE`이 이 설정을 재정의합니다.  
웹 보안 인증 사용에 대한 자세한 내용은 [웹 자격 증명을 사용한 역할 수임](cli-configure-role.md#cli-configure-role-oidc) 섹션을 참조하세요.

**`tcp_keepalive`**  
AWS CLI 클라이언트가 TCP keep-alive 패킷을 사용할 것인지 여부를 지정합니다.  
이 항목은 동등한 수준의 환경 변수나 명령줄 옵션을 가지고 있지 않습니다.  

```
tcp_keepalive = false
```

### S3 사용자 지정 명령 설정
<a name="cli-configure-files-s3"></a>

Amazon S3는 AWS CLI에서 Amazon S3 작업을 수행하는 방법을 구성하는 몇 가지 설정을 지원합니다. 일부 설정은 `s3api` 및`s3` 네임스페이스의 모든 S3 명령에 적용됩니다. 다른 설정은 특별히 공통 작업을 추상화하고 API 작업에 대한 일대일 매핑을 한 번 이상 수행하는 S3 "사용자 지정" 명령을 위한 것입니다. `aws s3` 이전 명령인 `cp`, `sync`, `mv` 및 `rm`에는 S3 이전을 제어하는 데 사용할 수 있는 추가 설정이 있습니다.

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

**참고**  
이러한 설정은 전적으로 선택 사항입니다. 이러한 설정을 구성하지 않고도 `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`, `virtual` 및 `auto`입니다. 기본 값은 `auto`입니다.  
Amazon S3 엔드포인트는 두 가지 방식으로 구성할 수 있습니다. 첫 번째는 `virtual`이라고 하는 방식으로 호스트 이름의 일부로 버킷 이름을 포함하고 있습니다. 예를 들면 `https://bucketname.s3.amazonaws.com`입니다. 아니면 `path` 방식을 사용하여 마치 URI의 경로인 것처럼 버킷 이름을 취급합니다(예: `https://s3.amazonaws.com/bucketname`). CLI은 `auto`를 사용하도록 기본 설정되어 있는데, 가능한 경우 `virtual` 방식을 사용하되, 필요할 때는 `path` 방식으로 돌아갑니다. 예를 들어 DNS를 준수하지 않은 버킷 이름은 호스트 이름의 일부가 될 수 없고 해당 경로에 있어야 합니다. `auto`에서는 CLI가 이 조건을 탐지하여 사용자를 대신해 `path` 방식으로 자동 전환합니다. 주소 지정 방식을 `path`로 설정한 경우에는 AWS에서 구성한 AWS CLI 리전이 버킷의 리전과 일치하는지 확인해야 합니다.

**`payload_signing_enabled`**  
SHA256이 sigv4 페이로드를 서명하는지 여부를 지정합니다. HTTPS를 사용할 때 업로드(`UploadPart` 및 `PutObject`)를 스트리밍하기 위해 기본적으로 이 옵션이 비활성화되어 있습니다. 업로드(`false` 및 `UploadPart`) 스트리밍을 위해 이 값이 기본적으로 `PutObject`로 설정됩니다. 단, `ContentMD5`가 존재하고(기본적으로 생성) 엔드포인트가 HTTPS를 사용하는 경우에 한합니다.  
true로 설정되어 있는 경우, S3 요청은 사용자를 위해 계산되어 요청 서명에 포함되어 있는 SHA256 체크섬의 형태로 추가적인 내용 확인을 받게 됩니다. false로 설정되어 있는 경우에는 체크섬이 계산되지 않습니다. 이 옵션을 비활성화하는 것이 체크섬 계산에서 생성된 성능 오버헤드를 줄이는 데 유용할 수 있습니다.

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

**`use_dualstack_endpoint`**  
이중 스택 엔드포인트를 사용하여 `s3` 및 `s3api` 요청을 보내도록 사용 설정합니다. *IPv4 및 IPv6 트래픽을 모두 지원하는 이중 스택 엔드포인트에 대한 자세한 내용은 Amazon 심플 스토리지 서비스 사용 설명서*의 [Amazon S3 이중 스택 엔드포인트](https://docs.aws.amazon.com/AmazonS3/latest/userguide/dual-stack-endpoints.html) 사용을 참조하세요. 이중 스택 엔드포인트는 일부 리전에 사용할 수 있는 서비스입니다. 서비스 또는 AWS 리전에 대한 이중 스택 엔드포인트가 없는 경우 요청이 실패합니다. 유효한 설정은 `true` 및 `false`입니다. 이 옵션은 기본적으로 비활성화되어 있습니다. 자세한 내용은 [모든 AWS 서비스에 이중 스택 엔드포인트를 사용하도록 설정](cli-configure-endpoints.md#endpoints-dual-stack) 섹션을 참조하세요.  
 이 옵션은 `use_accelerate_endpoint` 설정에서 함께 사용할 수 없습니다.

다음 설정은 `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 요청이 실행 중일 수 있습니다. 예를 들어, `aws s3 cp localdir s3://bucket/ --recursive` 명령을 사용하여 S3 버킷에 파일을 업로드하면 AWS CLI는 `localdir/file1`, `localdir/file2` 및 `localdir/file3` 파일을 동시에 업로드할 수 있습니다. `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가 실행이 필요하다고 인식하고 있는 태스크 수에 해당됩니다. 이는 곧 AWS CLI가 기본적으로 1,000건의 태스크만 미리 볼 수 있다는 것을 의미합니다. 이 값을 늘리면 AWS CLI에서 대기열 저장 속도가 태스크 완료 속도보다 빠르다는 가정하에 필요한 총 태스크 수를 보다 신속하게 알 수 있습니다. max\$1queue\$1size가 커질수록 메모리가 더 필요하게 된다는 단점이 있습니다.

**`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 멀티파트 업로드 설명서](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html)를 참조하세요.