기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
에 대한 자격 증명 기반 정책 예제AWS Config
기본적으로 사용자 및 역할에는AWS Config리소스를 생성하거나 수정할 수 있는 권한이 없습니다. 사용자에게 사용자가 필요한 리소스에서 작업을 수행할 권한을 부여하려면 IAM 관리자가 IAM 정책을 생성하면 됩니다.
이러한 예제 JSON 정책 문서를 사용하여 IAM 자격 증명 기반 정책을 생성하는 방법을 알아보려면 IAM 사용 설명서의 IAM 정책 생성(콘솔)을 참조하세요.
각 리소스 유형에 대한 ARNs 형식을 포함하여AWS Config에서 정의한 작업 및 리소스 유형에 대한 자세한 내용은 서비스 승인 참조의 에 사용되는 작업, 리소스 및 조건 키를AWS Config 참조하세요.
주제
정책 모범 사례
자격 증명 기반 정책에 따라 계정에서 사용자가AWS Config리소스를 생성, 액세스 또는 삭제할 수 있는지 여부가 결정됩니다. 이 작업으로 인해AWS 계정에 비용이 발생할 수 있습니다. 자격 증명 기반 정책을 생성하거나 편집할 때는 다음 지침과 권장 사항을 따릅니다.
-
AWS관리형 정책을 시작하고 최소 권한으로 전환 - 사용자 및 워크로드에 권한 부여를 시작하려면 많은 일반적인 사용 사례에 대한 권한을 부여하는 AWS관리형 정책을 사용합니다. 에서 사용할 수 있습니다AWS 계정. 사용 사례에 맞는AWS고객 관리형 정책을 정의하여 권한을 추가로 줄이는 것이 좋습니다. 자세한 내용은 IAM 사용자 설명서의 AWS관리형 정책 또는 AWS직무에 대한 관리형 정책을 참조하세요.
-
최소 권한 적용 – IAM 정책을 사용하여 권한을 설정하는 경우, 작업을 수행하는 데 필요한 권한만 부여합니다. 이렇게 하려면 최소 권한으로 알려진 특정 조건에서 특정 리소스에 대해 수행할 수 있는 작업을 정의합니다. IAM을 사용하여 권한을 적용하는 방법에 대한 자세한 정보는 IAM 사용자 설명서에 있는 IAM의 정책 및 권한을 참조하세요.
-
IAM 정책의 조건을 사용하여 액세스 추가 제한 – 정책에 조건을 추가하여 작업 및 리소스에 대한 액세스를 제한할 수 있습니다. 예를 들어, SSL을 사용하여 모든 요청을 전송해야 한다고 지정하는 정책 조건을 작성할 수 있습니다.AWS 서비스와 같은 특정를 통해 사용되는 경우 조건을 사용하여 서비스 작업에 대한 액세스 권한을 부여할 수도 있습니다CloudFormation. 자세한 내용은 IAM 사용자 설명서의 IAM JSON 정책 요소: 조건을 참조하세요.
-
IAM Access Analyzer를 통해 IAM 정책을 확인하여 안전하고 기능적인 권한 보장 - IAM Access Analyzer에서는 IAM 정책 언어(JSON)와 모범 사례가 정책에서 준수되도록 새로운 및 기존 정책을 확인합니다. IAM Access Analyzer는 100개 이상의 정책 확인 항목과 실행 가능한 추천을 제공하여 안전하고 기능적인 정책을 작성하도록 돕습니다. 자세한 내용은 IAM 사용자 설명서의 IAM Access Analyzer에서 정책 검증을 참조하세요.
-
다중 인증(MFA) 필요 -에서 IAM 사용자 또는 루트 사용자가 필요한 시나리오가 있는 경우 추가 보안을 위해 MFA를AWS 계정켭니다. API 작업을 직접적으로 호출할 때 MFA가 필요하면 정책에 MFA 조건을 추가합니다. 자세한 내용은 IAM 사용자 설명서의 MFA를 통한 보안 API 액세스를 참조하세요.
IAM의 모범 사례에 대한 자세한 내용은 IAM 사용자 설명서의 IAM의 보안 모범 사례를 참조하세요.
에 가입AWS 계정
이 없는 경우 다음 단계를AWS 계정완료하여 생성합니다.
에 가입하려면AWS 계정
https://portal.aws.amazon.com/billing/signup
을 엽니다. 온라인 지침을 따릅니다.
등록 절차 중 전화 또는 텍스트 메시지를 받고 전화 키패드로 확인 코드를 입력하는 과정이 있습니다.
에 가입하면AWS 계정AWS 계정 루트 사용자이 생성됩니다. 루트 사용자에게는 계정의 모든AWS 서비스및 리소스에 액세스할 권한이 있습니다. 보안 모범 사례는 사용자에게 관리 액세스 권한을 할당하고, 루트 사용자만 사용하여 루트 사용자 액세스 권한이 필요한 작업을 수행하는 것입니다.
AWS는 가입 프로세스가 완료된 후 확인 이메일을 보냅니다. 언제든지 https://aws.amazon.com/
관리자 액세스 권한이 있는 사용자 생성
에 가입한 후 일상적인 작업에 루트 사용자를 사용하지 않도록 관리 사용자를AWS 계정보호AWS IAM Identity Center,AWS 계정 루트 사용자활성화 및 생성합니다.
보안AWS 계정 루트 사용자
-
루트 사용자를 선택하고AWS 계정이메일 주소를 입력하여 계정 소유자AWS Management 콘솔
로에 로그인합니다. 다음 페이지에서 비밀번호를 입력합니다. 루트 사용자를 사용하여 로그인하는 데 도움이 필요하면 AWS 로그인사용 설명서의 루트 사용자로 로그인을 참조하세요.
-
루트 사용자의 다중 인증(MFA)을 활성화합니다.
지침은 IAM 사용 설명서의 AWS 계정루트 사용자(콘솔)에 대한 가상 MFA 디바이스 활성화를 참조하세요.
관리자 액세스 권한이 있는 사용자 생성
-
IAM Identity Center를 활성화합니다.
지침은 AWS IAM Identity Center사용자 안내서의 AWS IAM Identity Center설정을 참조하세요.
-
IAM Identity Center에서 사용자에게 관리 액세스 권한을 부여합니다.
를 자격 증명 소스IAM Identity Center 디렉터리로 사용하는 방법에 대한 자습서는 사용 AWS IAM Identity Center설명서의 기본값으로 사용자 액세스 구성을IAM Identity Center 디렉터리 참조하세요.
관리 액세스 권한이 있는 사용자로 로그인
-
IAM IDentity Center 사용자로 로그인하려면 IAM Identity Center 사용자를 생성할 때 이메일 주소로 전송된 로그인 URL을 사용합니다.
IAM Identity Center 사용자를 사용하여 로그인하는 데 도움이 필요하면 AWS 로그인사용 설명서의AWS액세스 포털에 로그인을 참조하세요.
추가 사용자에게 액세스 권한 할당
-
IAM Identity Center에서 최소 권한 적용 모범 사례를 따르는 권한 세트를 생성합니다.
지침은 Create a permission set에 대한 지침은 AWS IAM Identity Center사용 설명서에서 참조하세요.
-
사용자를 그룹에 할당하고, 그룹에 Single Sign-On 액세스 권한을 할당합니다.
지침은 AWS IAM Identity Center사용 설명서의 Add groups를 참조하세요.
AWS Config콘솔 사용
AWS Config콘솔에 액세스하려면 최소 권한 집합이 있어야 합니다. 이러한 권한은의AWS Config리소스에 대한 세부 정보를 나열하고 볼 수 있도록 허용해야 합니다AWS 계정. 최소 필수 권한보다 더 제한적인 자격 증명 기반 정책을 생성하는 경우, 콘솔이 해당 정책에 연결된 엔티티(사용자 또는 역할)에 대해 의도대로 작동하지 않습니다.
AWS CLI또는AWS API만 호출하는 사용자에게 최소 콘솔 권한을 허용할 필요는 없습니다. 대신, 수행하려는 API 작업과 일치하는 작업에만 액세스할 수 있도록 합니다.
사용자와 역할이AWS Config콘솔을 계속 사용할 수 있도록 하려면 관리형AWS ConfigAWS정책도 엔터티에 연결합니다. 자세한 내용은 IAM 사용 설명서의 사용자에게 권한 추가를 참조하세요.AWSConfigUserAccess
사용자에게와 상호 작용할 수 있는 권한을 부여해야 합니다AWS Config. 에 대한 전체 액세스 권한이 필요한 사용자의 경우 관리형 정책에 대한 전체 액세스AWS Config 권한을AWS Config사용합니다.
액세스 권한을 제공하려면 사용자, 그룹 또는 역할에 권한을 추가하세요.
-
의 사용자 및 그룹AWS IAM Identity Center:
권한 세트를 생성합니다. AWS IAM Identity Center사용자 안내서에서 권한 세트 생성의 지침을 따릅니다.
-
ID 제공업체를 통해 IAM에서 관리되는 사용자:
ID 페더레이션을 위한 역할을 생성합니다. IAM 사용자 안내서에서 서드 파티 ID 제공업체의 역할 생성(페더레이션)의 지침을 따릅니다.
-
IAM 사용자:
-
사용자가 맡을 수 있는 역할을 생성합니다. IAM 사용자 안내서에서 IAM 사용자의 역할 생성의 지침을 따릅니다.
-
(권장되지 않음) 정책을 사용자에게 직접 연결하거나 사용자를 사용자 그룹에 추가합니다. IAM 사용 설명서에서 사용자(콘솔)에 권한 추가의 지침을 따르세요.
-
사용자가 자신의 고유한 권한을 볼 수 있도록 허용
이 예제는 IAM 사용자가 자신의 사용자 ID에 연결된 인라인 및 관리형 정책을 볼 수 있도록 허용하는 정책을 생성하는 방법을 보여줍니다. 이 정책에는 콘솔에서 또는AWS CLI또는AWS API를 사용하여 프로그래밍 방식으로이 작업을 완료할 수 있는 권한이 포함됩니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }
에 대한 읽기 전용 액세스AWS Config
다음 예제에서는에 읽기 전용 액세스 권한을 AWSConfigUserAccess 부여하는AWS관리형 정책을 보여줍니다AWS Config.
정책 설명에서 Effect 요소는 작업 허용 또는 거부 여부를 지정합니다. Action 요소는 사용자가 수행할 수 있도록 허용된 특정 작업을 나열합니다. Resource 요소는 사용자가 해당 작업을 수행할 수 있는AWS리소스를 나열합니다.AWS Config작업에 대한 액세스를 제어하는 정책의 경우 Resource 요소는 항상 "모든 리소스"를 의미하는 와일드카드*인 로 설정됩니다.
서비스가 지원하는 API에 대한 Action 요소의 값입니다. 작업 앞에는 작업을 참조함을 config: 나타내는AWS Config작업이 옵니다. 다음 예제와 같이 * 요소에서 Action 와일드카드 문자를 사용할 수 있습니다.
-
"Action": ["config:*ConfigurationRecorder"]이렇게 하면 "ConfigurationRecorder"(
StartConfigurationRecorder, )로 끝나는 모든AWS Config작업이 허용됩니다StopConfigurationRecorder. -
"Action": ["config:*"]이렇게 하면 모든AWS Config작업이 허용되지만 다른AWS서비스에 대한 작업은 허용되지 않습니다.
-
"Action": ["*"]이렇게 하면 모든AWS작업이 허용됩니다. 이 권한은 계정의AWS관리자 역할을 하는 사용자에게 적합합니다.
읽기 전용 정책에서는 StartConfigurationRecorder, StopConfigurationRecorder, 및 DeleteConfigurationRecorder와 같은 작업에 대한 사용자 권한을 허용하지 않습니다. 이 정책이 적용된 사용자는 구성 레코더를 시작, 중지 또는 삭제할 수 없습니다.AWS Config작업 목록은 AWS Config API 참조를 참조하세요.
에 대한 전체 액세스AWS Config
다음 예제에서는에 대한 전체 액세스 권한을 부여하는 정책을 보여줍니다AWS Config. 사용자에게 모든AWS Config작업을 수행할 수 있는 권한을 부여합니다. 또한 사용자가 Amazon S3 버킷에서 파일을 관리하고, 사용자가 연결되어 있는 계정에서 Amazon SNS 주제를 관리할 수 있도록 합니다.
중요
이 정책은 광범위한 권한을 부여합니다. 전체 액세스 권한을 부여하기 전에 최소한의 권한 세트로 시작하여 필요에 따라 추가 권한을 부여하는 것이 좋습니다. 처음부터 권한을 많이 부여한 후 나중에 줄이는 방법보다 이 방법이 더 안전합니다.
AWS Config규칙 API 작업에 지원되는 리소스 수준 권한
리소스 수준 권한은 사용자가 작업을 수행할 수 있는 리소스를 지정하는 기능을 나타냅니다.는 특정AWS Config규칙 API 작업에 대한 리소스 수준 권한을AWS Config지원합니다. 즉, 특정AWS Config규칙 작업의 경우 사용자가 해당 작업을 사용할 수 있는 조건을 제어할 수 있습니다. 이러한 조건은 충족되어야 하는 작업이거나 사용자가 사용하도록 허용된 특정 리소스일 수 있습니다.
다음 표에서는 현재 리소스 수준 권한을 지원하는AWS Config규칙 API 작업에 대해 설명합니다. 또한 각 작업에 지원되는 리소스 및 해당 ARN도 설명합니다. ARN을 지정할 때, 예를 들어, 정확한 리소스 ID를 지정할 수 없거나 지정하길 원치 않는 경우에는 경로에 * 와일드카드를 사용할 수 있습니다.
중요
AWS Config규칙 API 작업이이 표에 나열되지 않은 경우 리소스 수준 권한을 지원하지 않습니다.AWS Config규칙 작업이 리소스 수준 권한을 지원하지 않는 경우 사용자에게 작업을 사용할 수 있는 권한을 부여할 수 있지만 정책 설명의 리소스 요소에 *를 지정해야 합니다.
| API 작업 | 리소스 |
|---|---|
DeleteConfigRule |
Config 규칙 arn:aws:config: |
DeleteEvaluationResults |
Config 규칙 arn:aws:config: |
DescribeComplianceByConfigRule |
Config 규칙 arn:aws:config: |
DescribeConfigRuleEvaluationStatus |
Config 규칙 arn:aws:config: |
GetComplianceDetailsByConfigRule |
Config 규칙 arn:aws:config: |
PutConfigRule |
Config 규칙 arn:aws:config: |
StartConfigRulesEvaluation |
Config 규칙 arn:aws:config: |
PutRemediationConfigurations |
문제 해결 구성 arn:aws:config: |
DescribeRemediationConfigurations |
문제 해결 구성 arn:aws:config: |
DeleteRemediationConfiguration |
문제 해결 구성 arn:aws:config: |
PutRemediationExceptions |
문제 해결 구성 arn:aws:config: |
DescribeRemediationExceptions |
문제 해결 구성 arn:aws:config: |
DeleteRemediationExceptions |
문제 해결 구성 arn:aws:config: |
예를 들어, 특정 사용자에게 특정 규칙에 대해 읽기 액세스를 허용하고 쓰기 액세스를 거부할 수 있습니다.
첫 번째 정책에서는 DescribeConfigRuleEvaluationStatus 지정된AWS Config규칙에서와 같은 규칙 읽기 작업을 허용합니다.
두 번째 정책에서는 특정AWS Config규칙에 대한 규칙 쓰기 작업을 거부합니다.
리소스 수준 권한을 사용하면 읽기 액세스를 허용하고 쓰기 액세스를 거부하여AWS Config규칙 API 작업에 대한 특정 작업을 수행할 수 있습니다.
다중 계정 다중 리전 데이터 집계에 지원되는 리소스 수준 권한
리소스 수준 권한을 사용하여 다중 계정 다중 리전 데이터 집계 시 특정 작업을 수행하는 사용자의 기능을 제어할 수 있습니다. 다음AWS ConfigAggregator APIs 지원합니다.
예를 들어 두 개의 애그리게이터 AccessibleAggregator 및 InAccessibleAggregator를 생성하고 AccessibleAggregator에 대한 액세스는 허용하지만 InAccessibleAggregator에 대한 액세스는 거부하는 IAM 정책을 추가하여 특정 사용자의 리소스 데이터 액세스를 제한할 수 있습니다.
AccessibleAggregator에 대한 IAM 정책
이 정책에서는 지정한AWS Config Amazon 리소스 이름(ARN)에 지원되는 애그리게이터 작업에 대한 액세스를 허용합니다. 이 예제에서AWS Config ARN은 입니다arn:aws:config:ap-northeast-1:.AccountID:config-aggregator/config-aggregator-mocpsqhs
InAccessibleAggregator에 대한 IAM 정책
이 정책에서는 지정한AWS Config ARN에 지원되는 애그리게이터 작업에 대한 액세스를 거부합니다. 이 예제에서AWS Config ARN은 입니다arn:aws:config:ap-northeast-1:.AccountID:config-aggregator/config-aggregator-pokxzldx
개발자 그룹의 사용자가 지정된AWS Config ARN에서 이러한 작업을 수행하려고 하면 해당 사용자에게 액세스 거부 예외가 발생합니다.
사용자 액세스 권한 확인
생성한 애그리게이터를 표시하려면 다음AWS CLI명령을 실행합니다.
aws configservice describe-configuration-aggregators
명령이 성공적으로 완료되면 계정과 관련된 모든 애그리게이터의 세부 정보를 볼 수 있습니다. 다음 예제에서는 AccessibleAggregator 및 InAccessibleAggregator입니다.
{ "ConfigurationAggregators": [ { "ConfigurationAggregatorArn": "arn:aws:config:ap-northeast-1:AccountID:config-aggregator/config-aggregator-mocpsqhs", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "AccessibleAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ] } ], "LastUpdatedTime": 1517942461.455 }, { "ConfigurationAggregatorArn": "arn:aws:config:ap-northeast-1:AccountID:config-aggregator/config-aggregator-pokxzldx", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "InAccessibleAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ] } ], "LastUpdatedTime": 1517942461.455 } ] }
참고
account-aggregation-sources에, 데이터를 집계하려는AWS계정 ID의 쉼표로 구분된 목록을 입력합니다. 계정 ID를 대괄호로 묶고 반드시 따옴표를 이스케이프 처리해야 합니다(예: "[{\"AccountIds\":
[\").AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\":
true}]"
InAccessibleAggregator 또는 액세스를 거부하려는 애그리게이터에 다음 IAM 정책을 연결합니다.
그런 다음 IAM 정책이 특정 애그리게이터의 규칙에 대한 액세스를 제한하도록 작동하는지 확인할 수 있습니다.
aws configservice get-aggregate-compliance-details-by-config-rule --configuration-aggregator-name InAccessibleAggregator --config-rule-namerule name--account-idAccountID--aws-regionAwsRegion
이 명령은 액세스 거부 예외를 반환할 것입니다.
An error occurred (AccessDeniedException) when calling the GetAggregateComplianceDetailsByConfigRule operation: User: arn:aws:iam::AccountID:user/is not authorized to perform: config:GetAggregateComplianceDetailsByConfigRule on resource: arn:aws:config:AwsRegion-1:AccountID:config-aggregator/config-aggregator-pokxzldx