외부 프로세스를 통해 보안 인증 정보 소싱 - AWS Command Line Interface

이 설명서는 의 버전 1 AWS CLI 전용입니다. 의 버전 2와 관련된 설명서는 버전 2 사용 설명서 를 AWS CLI참조하세요.

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

외부 프로세스를 통해 보안 인증 정보 소싱

주의

이 주제에서는 외부 프로세스에서 자격 증명을 소싱하는 방법을 알아봅니다. 자격 증명을 생성하는 명령이 승인되지 않은 프로세스나 사용자가 액세스할 수 있게 된 경우에는 이것이 보안 위험이 될 수 있습니다. 자격 증명이 침해될 위험을 AWS 줄이려면 에서 AWS CLI 제공하는 지원되는 안전한 대안을 사용하는 것이 좋습니다. config 파일과 유출 방지를 도와주는 모든 파일 및 도구를 보호하고 있는지 확인합니다.

사용자 지정 자격 증명 도구에서 비밀 정보를 기록하지 않도록 하십시오. 이러한 정보는 해당 정보를 SDKs 캡처하고 기록하여 권한이 없는 사용자에게 노출시킬 AWS CLI 수 StdErr 있기 때문입니다.

에서 직접 지원하지 않는 자격 증명을 생성하거나 조회하는 방법이 있는 경우 파일에서 credential_process 설정을 구성하여 이 AWS CLI 자격 증명을 사용하도록 구성할 수 있습니다. AWS CLIconfig

예를 들어 config 파일에 다음과 유사한 항목을 포함시킬 수 있습니다.

[profile developer] credential_process = /opt/bin/awscreds-custom --username helen
구문

기존 운영 체제와 호환되는 방식으로 이 문자열을 생성하려면 다음 규칙을 따르십시오.

  • 경로 또는 파일 이름에 공백이 있으면 전체 경로와 파일 이름을 큰 따옴표(" ")로 묶습니다. 경로 및 파일 이름은 다음 문자만 포함할 수 있습니다. A-Z a-z 0-9 - _ . 공백

  • 파라미터 이름이나 파라미터 값에 공백이 있으면 해당 요소를 큰 따옴표(" ")로 묶습니다. 전체 페어가 아니라 이름 또는 값만 묶으십시오.

  • 문자열 안에 환경 변수를 포함하지 마십시오. 예를 들어 $HOME 또는 %USERPROFILE%를 포함할 수 없습니다.

  • 홈 폴더를 ~로 지정하지 마십시오. 전체 경로를 지정해야 합니다.

Windows용 예

credential_process = "C:\Path\To\credentials.cmd" parameterWithoutSpaces "parameter with spaces"

Linux 또는 macOS용 예

credential_process = "/Users/Dave/path/to/credentials.sh" parameterWithoutSpaces "parameter with spaces"

자격 증명 프로그램에서 예상되는 출력

는 프로필에 지정된 대로 명령을 AWS CLI 실행한 다음 에서 데이터를 읽습니다STDOUT. 지정하는 명령은 다음 구문과 STDOUT 일치하는 JSON 출력을 생성해야 합니다.

{ "Version": 1, "AccessKeyId": "an AWS access key", "SecretAccessKey": "your AWS secret access key", "SessionToken": "the AWS session token for temporary credentials", "Expiration": "ISO8601 timestamp when the credentials expire" }
참고

이 문서의 작성일 현재, Version 키는 1로 설정되어 있습니다. 구조가 발전하면서 시간에 따라 이 값이 증가할 수 있습니다.

Expiration키는 ISO8601 형식의 타임스탬프입니다. Expiration키가 도구 출력에 없는 경우 는 자격 증명을 새로 고치지 않는 장기 자격 증명으로 CLI 간주합니다. 그렇지 않은 경우 자격 증명은 임시 자격 증명으로 간주되며, 기간이 만료되기 전에 credential_process 명령을 다시 실행하면 자동으로 새로 고침됩니다.

참고

는 역할 수임 자격 증명과 달리 외부 프로세스 자격 증명을 캐시하지 AWS CLI 않습니다. 캐싱이 필요한 경우에는 외부 프로세스에서 이를 실행해야 합니다.

외부 프로세스는 자격 증명을 검색하는 동안 오류가 발생했음을 나타내기 위해 0이 아닌 반환 코드를 반환할 수 있습니다.