View a markdown version of this page

IAM 사용자 자격 증명을 사용한 인증 - AWS Command Line Interface

IAM 사용자 자격 증명을 사용한 인증

주의

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

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

1단계: IAM 사용자 생성

IAM 사용 설명서의 IAM 사용자 생성(콘솔) 절차에 따라 IAM 사용자를 생성합니다.

  • 권한 옵션에서 이 사용자에게 권한을 할당하려는 방법에 대한 정책 직접 연결을 선택합니다.

  • 대부분의 “시작하기” SDK 자습서에서는 Amazon S3 서비스를 예로 사용합니다. 애플리케이션에 Amazon S3에 대한 전체 액세스 권한을 제공하려면 이 사용자에게 연결할 AmazonS3FullAccess 정책을 선택하세요.

2단계: 액세스 키 가져오기

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

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

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

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

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

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

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

3단계: AWS CLI 구성

일반적인 용도로는 AWS CLI에서 다음과 같은 정보가 필요합니다.

  • 액세스 키 ID

  • 비밀 액세스 키

  • AWS 리전

  • 출력 형식

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

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

사용aws configure

일반적인 용도에서 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 파일을 통해 액세스 키 가져오기

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

.csv 파일에는 다음 헤더가 포함되어야 합니다.

  • 사용자 이름 - 이 열을 .csv에 추가해야 합니다. 가져올 때 config 및 credentials에 사용되는 프로필 이름을 만드는 데 사용됩니다.

  • 액세스 키 ID

  • 비밀 액세스 키

참고

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

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

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

자세한 내용은 aws_configure_import 섹션을 참조하세요.

config 및 credentials 파일 직접 편집

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

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

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

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

(선택 사항) IAM 사용자 자격 증명과 함께 다중 인증 사용

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

MFA가 활성화된 IAM 사용자를 사용하여 aws configure mfa-login 명령을 실행하여 지정된 프로필에 대해 다중 인증(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의 멀티 팩터 인증을 참조하세요.