AWS KMS 액세스 제어 용어집
다음 주제에서는 AWS KMS 액세스 제어에서 중요한 용어와 개념을 설명합니다.
인증
인증은 ID를 확인하는 프로세스입니다. AWS KMS에 요청을 전송하기 위해서는 AWS 보안 인증 정보를 사용하여 AWS에 로그인해야 합니다.
승인
권한 부여는 AWS KMS 리소스의 생성, 관리 또는 사용에 대한 요청을 전송할 수 있는 권한을 제공합니다. 예를 들어 암호화 작업에 KMS 키를 사용할 권한이 있어야 합니다.
AWS KMS 리소스에 대한 액세스를 제어하려면 키 정책, IAM 정책 및 권한 부여를 사용하세요. 모든 KMS 키에는 키 정책이 있어야 합니다. 키 정책에서 허용되는 경우 IAM 정책 및 권한 부여를 사용하여 보안 주체에게 KMS 키에 대한 액세스 권한을 부여할 수도 있습니다. 권한 부여를 구체화하기 위해서는 요청 또는 리소스가 지정한 조건을 충족하는 경우에만 액세스를 허용하거나 거부하는 조건 키를 사용할 수 있습니다. 다른 AWS 계정에서 신뢰하는 보안 주체에 대한 액세스를 허용할 수도 있습니다.
ID를 통한 인증
인증은 ID 자격 증명을 사용하여 AWS에 로그인하는 방식입니다. AWS 계정 루트 사용자나 IAM 사용자로 또는 IAM 역할을 수임하여 인증받아야 합니다.
AWS IAM Identity Center(IAM Identity Center), Single Sign-On 인증 또는 Google/Facebook 자격 증명과 같은 자격 증명 소스의 자격 증명을 사용하여 페더레이션 자격 증명으로 로그인할 수 있습니다. 로그인하는 방법에 대한 자세한 내용은 AWS 로그인 사용 설명서의 AWS 계정에 로그인하는 방법 섹션을 참조하세요.
프로그래밍 방식 액세스를 위해 AWS는 요청에 암호화 방식으로 서명할 수 있는 SDK 및 CLI를 제공합니다. 자세한 내용은 IAM 사용 설명서의 API 요청용 AWS Signature Version 4 섹션을 참조하세요.
AWS 계정 루트 사용자
AWS 계정을 생성하는 경우에는 모든 AWS 서비스 서비스와 리소스에 대한 완전한 액세스 권한이 있는 AWS 계정 루트 사용자라는 단일 로그인 자격 증명으로 시작합니다. 일상적인 작업에 루트 사용자를 사용하지 않을 것을 강력히 권장합니다. 루트 사용자 자격 증명이 필요한 작업은 IAM 사용 설명서의 루트 사용자 자격 증명이 필요한 작업 섹션을 참조하세요.
페더레이션 자격 증명
가장 좋은 방법은 인간 사용자가 ID 제공업체와의 페더레이션을 사용하여 임시 보안 인증으로 AWS 서비스에 액세스하도록 하는 것입니다.
페더레이션 자격 증명은 엔터프라이즈 사용자 디렉터리, 웹 ID 제공업체 또는 Directory Service의 사용자로, 자격 증명 소스의 자격 증명을 사용하여 AWS 서비스에 액세스합니다. 페더레이션 자격 증명은 임시 자격 증명을 제공하는 역할을 수임합니다.
중앙 집중식 액세스 관리를 위해 AWS IAM Identity Center를 추천합니다. 자세한 정보는 AWS IAM Identity Center 사용 설명서의 IAM Identity Center란 무엇인가요? 섹션을 참조하세요.
IAM 사용자 및 그룹
IAM 사용자는 단일 개인 또는 애플리케이션에 대한 특정 권한을 가진 자격 증명입니다. 장기 자격 증명이 있는 IAM 사용자 대신 임시 자격 증명을 사용하는 것이 좋습니다. 자세한 내용은 IAM 사용 설명서에서 임시 자격 증명을 사용하여 AWS에 액세스하려면 인간 사용자가 ID 공급자와의 페더레이션을 사용하도록 요구를 참조하세요.
IAM 그룹은 IAM 사용자 모음을 지정하고 대규모 사용자 집합에 대한 권한 관리를 더 쉽게 만듭니다. 자세한 내용은 IAM 사용 설명서의 IAM 사용자 사용 사례 섹션을 참조하세요.
IAM 역할
IAM 역할은 임시 자격 증명을 제공하는 특정 권한이 있는 자격 증명입니다. 사용자에서 IAM 역할(콘솔)로 전환하거나 AWS CLI 또는 AWS API 작업을 직접 호출하여 역할을 수임할 수 있습니다. 자세한 내용은 IAM 사용 설명서의 역할 수임 방법을 참조하세요.
IAM 역할은 페더레이션 사용자 액세스, 임시 IAM 사용자 권한, 교차 계정 액세스, 교차 서비스 액세스 및 Amazon EC2에서 실행되는 애플리케이션에 유용합니다. 자세한 내용은 IAM 사용 설명서의 교차 계정 리소스 액세스를 참조하세요.
정책을 사용하여 액세스 관리
정책을 생성하고 AWS ID 또는 리소스에 연결하여 AWS에서 내 액세스를 제어합니다. 정책은 자격 증명이나 리소스와 연결될 때 해당 권한을 정의합니다. AWS는 위탁자가 요청을 보낼 때 이러한 정책을 평가합니다. 대부분의 정책은 AWS에 JSON 문서로 저장됩니다. JSON 정책 문서에 대한 자세한 내용은 IAM 사용 설명서의 JSON 정책 개요 섹션을 참조하세요.
정책을 사용하여 관리자는 어떤 위탁자가 어떤 리소스에 대해 어떤 조건에서 작업을 수행할 수 있는지 정의하여 누가 무엇을 액세스할 수 있는지 지정합니다.
기본적으로, 사용자 및 역할에는 어떠한 권한도 없습니다. IAM 관리자는 IAM 정책을 생성하고 사용자가 수임할 수 있는 역할에 이를 추가합니다. IAM 정책은 작업을 수행하기 위해 사용하는 방법과 관계없이 해당 권한을 정의합니다.
ID 기반 정책
자격 증명 기반 정책은 자격 증명(사용자, 사용자 그룹 또는 역할)에 연결하는 JSON 권한 정책 문서입니다. 이러한 정책은 자격 증명이 수행할 수 있는 작업, 대상 리소스 및 이에 관한 조건을 제어합니다. 자격 증명 기반 정책을 생성하는 방법을 알아보려면 IAM 사용 설명서에서 고객 관리형 정책으로 사용자 지정 IAM 권한 정의를 참조하세요.
자격 증명 기반 정책은 인라인 정책(단일 자격 증명에 직접 포함) 또는 관리형 정책(여러 자격 증명에 연결된 독립 실행형 정책)일 수 있습니다. 관리형 정책 또는 인라인 정책을 선택하는 방법을 알아보려면 IAM 사용 설명서의 관리형 정책 및 인라인 정책 중에서 선택 섹션을 참조하세요.
리소스 기반 정책
AWS KMS 키 정책은 KMS 키에 대한 액세스를 제어하는 리소스 기반 정책입니다. 모든 KMS 키에는 키 정책이 있어야 합니다. 다른 인증 메커니즘을 사용하여 KMS 키에 대한 액세스를 허용할 수 있지만 이는 키 정책에서 허용되는 경우에만 가능합니다. (키 정책에서 명시적으로 허용되지 않는 경우에도 IAM 정책을 사용하여 KMS 키에 대한 액세스를 거부할 수 있습니다.)
리소스 기반 정책은 특정 리소스에 대한 액세스를 제어하기 위하여 리소스(예: KMS 키)에 연결하는 JSON 정책 문서입니다. 리소스 기반 정책은 지정된 보안 주체가 해당 리소스에 대해 어떤 조건에서 어떤 작업을 수행할 수 있는지 정의합니다. 리소스 기반 정책은 리소스를 지정하지 않지만 계정, 사용자, 역할, 페더레이션 사용자 또는 AWS 서비스와 같은 보안 주체는 지정해야 합니다. 리소스 기반 정책은 리소스를 관리하는 해당 서비스에 있는 인라인 정책입니다. 리소스 기반 정책에서는 IAM의 AWS 관리형 정책(예: AWSKeyManagementServicePowerUser 관리형 정책)을 사용할 수 없습니다.
기타 정책 타입
AWS는 더 일반적인 정책 유형에 따라 부여되는 최대 권한을 설정할 수 있는 추가 정책 유형을 지원합니다.
-
권한 경계 - 자격 증명 기반 정책에서 IAM 엔터티에 부여할 수 있는 최대 권한을 설정합니다. 자세한 정보는 IAM 사용 설명서의 IAM 엔터티의 권한 범위를 참조하세요.
-
서비스 제어 정책(SCP) - AWS Organizations 내 조직 또는 조직 단위에 대한 최대 권한을 지정합니다. 자세한 내용은 AWS Organizations 사용 설명서의 서비스 제어 정책을 참조하세요.
-
리소스 제어 정책(RCP) - 계정 내 리소스에 사용할 수 있는 최대 권한을 설정합니다. 자세한 내용은 AWS Organizations 사용 설명서의 리소스 제어 정책(RCP)을 참조하세요.
-
세션 정책 - 역할 또는 페더레이션 사용자에 대해 임시 세션을 생성할 때 파라미터 자격으로 전달되는 고급 정책입니다. 자세한 내용은 IAM 사용 설명서의 세션 정책을 참조하세요.
여러 정책 유형
여러 정책 유형이 요청에 적용되는 경우, 결과 권한은 이해하기가 더 복잡합니다. 여러 정책 유형이 관련될 때 AWS가 요청을 허용할지를 결정하는 방법을 알아보려면 IAM 사용 설명서의 정책 평가 로직을 참조하세요.
AWS KMS 리소스
AWS KMS에서 기본 리소스는 AWS KMS key입니다. AWS KMS는 KMS 키에 대해 알기 쉬운 이름을 제공하는 독립 리소스인 별칭을 지원합니다. 일부 AWS KMS 작업에서는 별칭을 사용하여 KMS 키를 식별할 수 있습니다.
KMS 키 또는 별칭의 각 인스턴스에는 표준 형식의 고유한 Amazon 리소스 이름(ARN)이 있습니다. AWS KMS 리소스에서 AWS 서비스 이름은 kms입니다.
-
AWS KMS key
ARN 형식:
arn:AWS partition name:AWS service name:AWS 리전:AWS 계정 ID:key/key IDARN 예:
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab -
별칭: .
ARN 형식:
arn:AWS partition name:AWS service name:AWS 리전:AWS 계정 ID:alias/alias nameARN 예:
arn:aws:kms:us-west-2:111122223333:alias/example-alias
AWS KMS는 AWS KMS 리소스를 처리하기 위한 API 작업을 제공합니다. AWS Management 콘솔 및 AWS KMS API 작업에서 KMS 키를 식별하는 방법에 대한 자세한 내용은 키 식별자(KeyId) 단원을 참조하십시오. AWS KMS 작업 목록은 AWS Key Management Service API 참조 섹션을 확인하세요.