기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
MemoryDB에 대한 ID 기반 정책(IAM 정책) 사용
이 항목에서는 계정 관리자가 IAM 자격 증명(사용자, 그룹, 역할)에 권한 정책을 연결할 수 있는 자격 증명 기반 정책의 예를 제공합니다.
중요
MemoryDB 리소스 액세스를 관리하기 위한 기본 개념과 옵션을 설명하는 주제를 먼저 읽어보는 것이 좋습니다. 자세한 내용은 MemoryDB 리소스에 대한 액세스 권한 관리 개요 단원을 참조하십시오.
이 주제의 섹션에서는 다음 내용을 학습합니다.
다음은 권한 정책의 예입니다.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowClusterPermissions", "Effect": "Allow", "Action": [ "memorydb:CreateCluster", "memorydb:DescribeClusters", "memorydb:UpdateCluster"], "Resource": "*" }, { "Sid": "AllowUserToPassRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/EC2-roles-for-cluster" } ] }
이 정책에는 두 명령문이 있습니다:
-
첫 번째 명령문은 계정이 소유하는 임의의 클러스터에서 MemoryDB 작업(
memorydb:CreateCluster
,memorydb:DescribeClusters
, 및memorydb:UpdateCluster
)에 대한 권한을 부여합니다. -
두 번째 명령문은
Resource
값의 끝에 지정된 IAM 역할 이름에서 IAM 작업(iam:PassRole
)에 대한 권한을 부여합니다.
자격 증명 기반 정책에서는 권한을 가질 보안 주체를 지정하지 않으므로 이 정책은 Principal
요소를 지정하지 않습니다. 정책을 사용자에게 연결할 경우, 사용자는 암시적인 보안 주체입니다. IAM 역할에 권한 정책을 연결하면 역할의 신뢰 정책에서 식별된 보안 주체가 권한을 얻습니다.
모든 MemoryDB API 작업과 해당 작업이 적용되는 리소스를 보여주는 표는 MemoryDB API 권한: 작업, 리소스 및 조건 참조 섹션을 참조하세요.
MemoryDB 콘솔 사용에 필요한 권한
권한 참조 표에 MemoryDB API 작업과 각 작업에 필요한 권한이 나열되어 있습니다. MemoryDB API 작업에 대한 자세한 내용은 MemoryDB API 권한: 작업, 리소스 및 조건 참조 단원을 참조하세요.
MemoryDB 콘솔을 사용하려면 먼저 다음 권한 정책과 같이 추가 작업에 대한 권한을 부여해야 합니다.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "MinPermsForMemDBConsole", "Effect": "Allow", "Action": [ "memorydb:Describe*", "memorydb:List*", "ec2:DescribeAvailabilityZones", "ec2:DescribeVpcs", "ec2:DescribeAccountAttributes", "ec2:DescribeSecurityGroups", "cloudwatch:GetMetricStatistics", "cloudwatch:DescribeAlarms", "s3:ListAllMyBuckets", "sns:ListTopics", "sns:ListSubscriptions" ], "Resource": "*" } ] }
MemoryDB 콘솔에 이러한 추가 권한이 필요한 이유는 다음과 같습니다.
-
MemoryDB 작업 권한이 있으면 콘솔에서 계정의 MemoryDB 리소스를 표시할 수 있습니다.
-
콘솔에 Amazon EC2 쿼리를 위한
ec2
작업 권한이 있어야 합니다. 그래야 가용 영역, VPC, 보안 그룹 및 계정 속성을 표시할 수 있습니다. -
cloudwatch
작업에 대한 권한이 있으면 콘솔에서 Amazon CloudWatch 지표와 경보를 검색하고 콘솔에 표시할 수 있습니다. -
sns
작업에 대한 권한이 있으면 콘솔에서 Amazon Simple Notification Service(Amazon SNS) 주제와 구독을 검색하고 콘솔에 표시할 수 있습니다.
고객 관리형 정책 예제
기본 정책을 사용하지 않고 고객 관리형 정책을 사용할 경우, 두 가지 중 하나가 가능한지 확인해야 합니다. iam:createServiceLinkedRole
을 호출할 수 있는 권한이 있어야 합니다(자세한 내용은 예제 4: 사용자에게 IAM CreateServiceLinkedRole API 호출 허용 섹션을 참조하세요). 또는 MemoryDB 서비스 연결 역할을 생성해야 합니다.
MemoryDB 콘솔을 사용하는 데 필요한 최소 권한과 함께 이 섹션의 예제 정책을 사용할 경우 추가 권한이 부여됩니다. 이 예제는 AWS SDKs AWS CLI. MemoryDB 콘솔을 사용하는 데 필요한 권한에 대한 자세한 내용은 MemoryDB 콘솔 사용에 필요한 권한 단원을 참조하세요.
IAM 사용자 및 그룹을 설정하는 것에 대한 지침은 IAM 사용 설명서의 IAM 사용자와 관리자 그룹 처음 만들기 섹션을 참조하세요.
중요
프로덕션에서 IAM 정책을 사용하기 전에 항상 철저히 테스트하세요. 나타나는 일부 MemoryDB 작업을 MemoryDB 콘솔을 사용할 때 다른 작업이 해당 작업을 지원해야 할 수도 있습니다. 예를 들어, memorydb:CreateCluster
이(가) MemoryDB 클러스터를 생성하기 위한 권한을 부여합니다. 그러나 이 작업을 수행하기 위해 MemoryDB 콘솔에서 여러 Describe
및 List
작업을 사용하여 콘솔 목록을 채웁니다.
예시
예제 1: 사용자에게 MemoryDB 리소스에 대한 읽기 전용 액세스 허용
다음 정책은 사용자에게 리소스를 나열하도록 허용하는 MemoryDB 작업에 대한 권한을 부여합니다. 일반적으로 이 유형의 권한 정책을 관리자 그룹에 연결합니다.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MemDBUnrestricted", "Effect":"Allow", "Action": [ "memorydb:Describe*", "memorydb:List*"], "Resource":"*" } ] }
예제 2: 사용자가 일반 MemoryDB 시스템 관리자 작업을 수행하도록 허용
일반 시스템 관리자 작업에는 클러스터, 파라미터 및 파라미터 그룹 수정이 포함됩니다. 시스템 관리자가 MemoryDB 이벤트에 대한 정보를 보고 싶어할 수도 있습니다. 다음 정책은 이러한 일반 시스템 관리자 작업을 위한 MemoryDB 작업을 수행할 권한을 사용자에게 부여합니다. 일반적으로 이 유형의 권한 정책을 시스템 관리자 그룹에 연결합니다.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowSpecific", "Effect":"Allow", "Action":[ "memorydb:UpdateCluster", "memorydb:DescribeClusters", "memorydb:DescribeEvents", "memorydb:UpdateParameterGroup", "memorydb:DescribeParameterGroups", "memorydb:DescribeParameters", "memorydb:ResetParameterGroup",], "Resource":"*" } ] }
예제 3: 사용자가 모든 MemoryDB API 작업에 액세스하도록 허용
다음 정책은 사용자가 모든 MemoryDB 작업을 호출할 수 있도록 허용합니다. 관리자 사용자에게만 이 유형의 권한 정책을 부여하는 것이 좋습니다.
{ "Version": "2012-10-17", "Statement":[{ "Sid": "MDBAllowAll", "Effect":"Allow", "Action":[ "memorydb:*" ], "Resource":"*" } ] }
예제 4: 사용자에게 IAM CreateServiceLinkedRole API 호출 허용
다음 정책은 사용자가 IAM CreateServiceLinkedRole
API를 호출하도록 허용합니다. 변화하기 쉬운 MemoryDB 작업을 간접적으로 호출하는 사용자에게 이 유형의 권한 정책을 부여하는 것이 좋습니다.
{ "Version":"2012-10-17", "Statement":[ { "Sid":"CreateSLRAllows", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:AWS ServiceName":"memorydb.amazonaws.com" } } } ] }