

# IAM 사용자 자격 증명을 사용한 인증
<a name="cli-authentication-user"></a>

**주의**  
보안 위험을 방지하려면 목적별 소프트웨어를 개발하거나 실제 데이터로 작업할 때 IAM 사용자를 인증에 사용하지 마세요. 대신 [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)과 같은 보안 인증 공급자를 통한 페더레이션을 사용하세요.

이 섹션에서는 IAM 사용자를 사용하여 기본 설정을 구성하는 방법을 설명합니다. 여기에는 `config` 및 `credentials` 파일을 사용한 보안 보안 인증이 포함됩니다. 대신 AWS IAM Identity Center에 대한 구성 지침을 보려면 [AWS CLI를 사용하여 IAM Identity Center 인증 구성](cli-configure-sso.md) 섹션을 참조하세요.

**Contents**
+ [1단계: IAM 사용자 생성](#cli-authentication-user-create)
+ [2단계: 액세스 키 가져오기](#cli-authentication-user-get)
+ [3단계: AWS CLI 구성](#cli-authentication-user-configure.title)
  + [사용`aws configure`](#cli-authentication-user-configure-wizard)
  + [.CSV 파일을 통해 액세스 키 가져오기](#cli-authentication-user-configure-csv)
  + [`config` 및 `credentials` 파일 직접 편집](#cli-authentication-user-configure-csv.titlecli-authentication-user-configure-file)
+ [(선택 사항) IAM 사용자 자격 증명과 함께 다중 인증 사용](#cli-authentication-user-configure-csv.titlecli-authentication-user-mfa)

## 1단계: IAM 사용자 생성
<a name="cli-authentication-user-create"></a>

*IAM 사용 설명서*의 [IAM 사용자 생성(콘솔)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console) 절차에 따라 IAM 사용자를 생성합니다.
+ **권한 옵션**에서 이 사용자에게 권한을 할당하려는 방법에 대한 **정책 직접 연결**을 선택합니다.
+ 대부분의 “시작하기” SDK 자습서에서는 Amazon S3 서비스를 예로 사용합니다. 애플리케이션에 Amazon S3에 대한 전체 액세스 권한을 제공하려면 이 사용자에게 연결할 `AmazonS3FullAccess` 정책을 선택하세요.

## 2단계: 액세스 키 가져오기
<a name="cli-authentication-user-get"></a>

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 IAM 콘솔을 엽니다.

1. IAM 콘솔의 탐색 창에서 **사용자**를 선택한 다음 이전에 생성한 사용자의 **`User name`**를 선택합니다.

1. 사용자 페이지에서 **보안 보안 인증** 페이지를 선택합니다. 그런 다음 **액세스 키**에서 **액세스 키 생성**을 선택합니다.

1.  **액세스 키 생성 1단계**에서 **명령줄 인터페이스(CLI)**를 선택합니다.

1. **액세스 키 만들기 2단계**에서 선택적 태그를 입력하고 **다음**을 선택합니다.

1. **액세스 키 생성 3단계**에서 **.csv 파일 다운로드**를 선택하여 IAM 사용자의 액세스 키 및 보안 액세스 키와 함께 `.csv` 파일을 저장합니다. 나중에 이 정보가 필요합니다.

1. 완료(Done)를 선택합니다.

## 3단계: AWS CLI 구성
<a name="cli-authentication-user-configure.title"></a>

일반적인 용도로는 AWS CLI에서 다음과 같은 정보가 필요합니다.
+ 액세스 키 ID
+ 비밀 액세스 키
+ AWS 리전
+ 출력 형식

AWS CLI는 이 정보를 `default` 파일에서 `credentials`라는 *프로파일*(설정 모음)에 저장합니다. 기본적으로 이 프로파일의 정보는 사용할 프로파일을 명시적으로 지정하지 않는 AWS CLI 명령이 실행될 때 사용됩니다. `credentials` 파일에 대한 자세한 내용은 [AWS CLI의 구성 및 보안 인증 파일 설정](cli-configure-files.md) 섹션을 참조하세요.

AWS CLI을 구성하려면 다음 절차 중 하나를 사용합니다.

**Topics**
+ [사용`aws configure`](#cli-authentication-user-configure-wizard)
+ [.CSV 파일을 통해 액세스 키 가져오기](#cli-authentication-user-configure-csv)
+ [`config` 및 `credentials` 파일 직접 편집](#cli-authentication-user-configure-csv.titlecli-authentication-user-configure-file)

### 사용`aws configure`
<a name="cli-authentication-user-configure-wizard"></a>

일반적인 용도에서 `aws configure` 명령은 AWS CLI 설치를 설정할 수 있는 가장 빠른 방법입니다. 이 구성 마법사는 시작하는 데 필요한 각 정보를 입력하라는 메시지를 표시합니다. `--profile` 옵션을 사용하여 별도로 지정하지 않는 한 AWS CLI은 이 정보를 `default` 프로파일에 저장합니다.

다음 예에서는 샘플 값을 사용하여 `default` 프로필을 구성합니다. 다음 섹션에 설명된 대로 해당 값을 사용자 고유의 값으로 바꿉니다.

```
$ 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
```

다음 예에서는 샘플 값을 사용하여 `userprod`로 이름이 지정된 프로필을 구성합니다. 다음 섹션에 설명된 대로 해당 값을 사용자 고유의 값으로 바꿉니다.

```
$ aws configure --profile userprod
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
```

### .CSV 파일을 통해 액세스 키 가져오기
<a name="cli-authentication-user-configure-csv"></a>

`aws configure`를 사용하여 액세스 키를 입력하는 대신 액세스 키를 생성한 후 다운로드한 일반 텍스트 `.csv` 파일을 가져올 수 있습니다.

`.csv` 파일에는 다음 헤더가 포함되어야 합니다.
+ 사용자 이름 - 이 열을 `.csv`에 추가해야 합니다. 가져올 때 `config` 및 `credentials`에 사용되는 프로필 이름을 만드는 데 사용됩니다.
+ 액세스 키 ID
+ 비밀 액세스 키

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

`.csv` 파일을 가져오려면 다음과 같이 `aws configure import` 명령을 `--csv` 옵션과 함께 사용합니다.

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

자세한 내용은 `aws\$1configure\$1import` 섹션을 참조하세요.

### `config` 및 `credentials` 파일 직접 편집
<a name="cli-authentication-user-configure-csv.titlecli-authentication-user-configure-file"></a>

`config` 및 `credentials` 파일을 직접 편집하려면 다음을 수행하세요.

1. 공유 AWS `credentials` 보안 인증 파일을 생성하거나 엽니다. 이 파일은 Linux 및 macOS 시스템의 경우 `~/.aws/credentials`이며, Windows의 경우 `%USERPROFILE%\.aws\credentials`입니다. 자세한 내용은 [AWS CLI의 구성 및 보안 인증 파일 설정](cli-configure-files.md) 섹션을 참조하세요.

1. 다음 텍스트를 공유 `credentials` 파일에 추가합니다. 이전에 다운로드한 `.csv` 파일의 샘플 값을 바꾸고 파일을 저장합니다.

   ```
   [default] 
   aws_access_key_id = AKIAIOSFODNN7EXAMPLE 
   aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   ```

## (선택 사항) IAM 사용자 자격 증명과 함께 다중 인증 사용
<a name="cli-authentication-user-configure-csv.titlecli-authentication-user-mfa"></a>

보안을 강화하기 위해, 사용자가 직접 호출을 수행하려고 할 때 다중 인증(MFA) 디바이스, U2F 디바이스 또는 모바일 앱에서 생성된 일회용 키를 사용할 수 있습니다.

MFA가 활성화된 IAM 사용자를 사용하여 [https://docs.aws.amazon.com/cli/latest/reference/configure/mfa-login.html](https://docs.aws.amazon.com/cli/latest/reference/configure/mfa-login.html) 명령을 실행하여 지정된 프로필에 대해 다중 인증(MFA)과 함께 사용할 새 프로필을 구성합니다. 프로필이 지정되지 않은 경우 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 디바이스는 현재 이 명령에서 지원되지 않습니다.

MFA 프로필을 사용하려면 명령과 함께 `--profile` 옵션을 사용합니다.

```
$ aws s3 ls --profile mfaprofile
```

IAM 사용자에게 MFA를 할당하는 방법을 포함하여 IAM에서 MFA를 사용하는 방법에 대한 자세한 내용은 *AWS Identity and Access Management 사용 설명서*의 [AWS IAM의 멀티 팩터 인증](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html)을 참조하세요.