AWS 관리형 정책: AmazonDataZoneFullAccess - Amazon DataZone

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

AWS 관리형 정책: AmazonDataZoneFullAccess

AmazonDataZoneFullAccess 정책을 IAM 보안 인증에 연결할 수 있습니다.

이 정책은 AWS Management Console을 통해 Amazon DataZone에 대한 전체 액세스 권한을 제공합니다. 이 정책에는 암호화된 SSM 파라미터에 대한 AWS KMS에 대한 권한도 있습니다. SSM 파라미터를 해독할 수 있도록 KMS 키에 EnableKeyForAmazonDataZone 태그를 지정해야 합니다.

권한 세부 정보

이 정책에는 다음 권한이 포함되어 있습니다.

  • datazone - 위탁자에게 AWS Management Console을 통해 Amazon DataZone에 대한 전체 액세스 권한을 부여합니다.

  • kms - 보안 주체가 별칭을 나열하고, 키를 설명하고, 키를 해독할 수 있도록 허용합니다.

  • s3 - 위탁자가 기존 S3 버킷을 선택하거나 새 S3 버킷을 생성하여 Amazon DataZone 데이터를 저장할 수 있습니다.

  • ram - 위탁자가 AWS 계정에서 Amazon DataZone 도메인을 공유할 수 있도록 허용합니다.

  • iam - 위탁자가 역할을 전달 및 나열하고 정책을 받도록 허용합니다.

  • sso - 위탁자가 AWS IAM Identity Center 이 활성화된 리전을 가져올 수 있도록 허용합니다.

  • secretsmanager - 위탁자가 특정 접두사가 있는 보안 암호를 생성, 태그 지정 및 나열할 수 있습니다.

  • aoss - 보안 주체가 OpenSearch Serverless 보안 정책에 대한 정보를 생성하고 검색할 수 있도록 허용합니다.

  • bedrock - 위탁자가 추론 프로파일 및 파운데이션 모델에 대한 정보를 생성, 나열 및 검색할 수 있도록 허용합니다.

  • codeconnections - 보안 주체가 연결에 대한 태그를 삭제, 검색, 연결 나열 및 관리할 수 있도록 허용합니다.

  • codewhisperer - 보안 주체가 CodeWhisperer 프로필을 나열할 수 있도록 허용합니다.

  • ssm - 보안 주체가 파라미터에 대한 정보를 입력, 삭제 및 검색할 수 있도록 허용합니다.

  • redshift - 보안 주체가 클러스터를 설명하고 서버리스 작업 그룹을 나열할 수 있도록 허용합니다.

  • glue - 보안 주체가 데이터베이스를 가져올 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonDataZoneStatement", "Effect": "Allow", "Action": [ "datazone:*" ], "Resource": [ "*" ] }, { "Sid": "ReadOnlyStatement", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ListAliases", "iam:ListRoles", "sso:DescribeRegisteredRegions", "s3:ListAllMyBuckets", "redshift:DescribeClusters", "redshift-serverless:ListWorkgroups", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "secretsmanager:ListSecrets", "iam:ListUsers", "glue:GetDatabases", "codeconnections:ListConnections", "codeconnections:ListTagsForResource", "codewhisperer:ListProfiles", "bedrock:ListInferenceProfiles", "bedrock:ListFoundationModels", "bedrock:ListTagsForResource", "aoss:ListSecurityPolicies" ], "Resource": [ "*" ] }, { "Sid": "BucketReadOnlyStatement", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::*" }, { "Sid": "CreateBucketStatement", "Effect": "Allow", "Action": [ "s3:CreateBucket" ], "Resource": [ "arn:aws:s3:::amazon-datazone*", "arn:aws:s3:::amazon-sagemaker*" ] }, { "Sid": "ConfigureBucketStatement", "Effect": "Allow", "Action": [ "s3:PutBucketCORS", "s3:PutBucketPolicy", "s3:PutBucketVersioning" ], "Resource": [ "arn:aws:s3:::amazon-sagemaker*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "RamCreateResourceStatement", "Effect": "Allow", "Action": [ "ram:CreateResourceShare" ], "Resource": "*", "Condition": { "StringEqualsIfExists": { "ram:RequestedResourceType": "datazone:Domain" } } }, { "Sid": "RamResourceStatement", "Effect": "Allow", "Action": [ "ram:DeleteResourceShare", "ram:AssociateResourceShare", "ram:DisassociateResourceShare", "ram:RejectResourceShareInvitation" ], "Resource": "*", "Condition": { "StringLike": { "ram:ResourceShareName": [ "DataZone*" ] } } }, { "Sid": "RamResourceReadOnlyStatement", "Effect": "Allow", "Action": [ "ram:GetResourceShares", "ram:GetResourceShareInvitations", "ram:GetResourceShareAssociations", "ram:ListResourceSharePermissions" ], "Resource": "*" }, { "Sid": "RamAssociateResourceSharePermissionStatement", "Effect": "Allow", "Action": "ram:AssociateResourceSharePermission", "Resource": "*", "Condition": { "StringEquals": { "ram:PermissionArn": [ "arn:aws:ram::aws:permission/AWSRAMDefaultPermissionAmazonDataZoneDomain", "arn:aws:ram::aws:permission/AWSRAMPermissionAmazonDataZoneDomainFullAccessWithPortalAccess", "arn:aws:ram::aws:permission/AWSRAMPermissionsAmazonDatazoneDomainExtendedServiceAccess", "arn:aws:ram::aws:permission/AWSRAMPermissionsAmazonDatazoneDomainExtendedServiceWithPortalAccess" ] } } }, { "Sid": "IAMPassRoleStatement", "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "arn:aws:iam::*:role/AmazonDataZone*", "arn:aws:iam::*:role/service-role/AmazonDataZone*", "arn:aws:iam::*:role/service-role/AmazonSageMaker*" ], "Condition": { "StringEquals": { "iam:passedToService": "datazone.amazonaws.com" } } }, { "Sid": "IAMGetPolicyStatement", "Effect": "Allow", "Action": "iam:GetPolicy", "Resource": [ "arn:aws:iam::*:policy/service-role/AmazonDataZoneRedshiftAccessPolicy*" ] }, { "Sid": "DataZoneTagOnCreateDomainProjectTags", "Effect": "Allow", "Action": [ "secretsmanager:TagResource" ], "Resource": "arn:aws:secretsmanager:*:*:secret:AmazonDataZone-*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": [ "AmazonDataZoneDomain", "AmazonDataZoneProject" ] }, "StringLike": { "aws:RequestTag/AmazonDataZoneDomain": "dzd_*", "aws:ResourceTag/AmazonDataZoneDomain": "dzd_*" } } }, { "Sid": "DataZoneTagOnCreate", "Effect": "Allow", "Action": [ "secretsmanager:TagResource" ], "Resource": "arn:aws:secretsmanager:*:*:secret:AmazonDataZone-*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": [ "AmazonDataZoneDomain" ] }, "StringLike": { "aws:RequestTag/AmazonDataZoneDomain": "dzd_*", "aws:ResourceTag/AmazonDataZoneDomain": "dzd_*" } } }, { "Sid": "CreateSecretStatement", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret" ], "Resource": "arn:aws:secretsmanager:*:*:secret:AmazonDataZone-*", "Condition": { "StringLike": { "aws:RequestTag/AmazonDataZoneDomain": "dzd_*" } } }, { "Sid": "ConnectionStatement", "Effect": "Allow", "Action": [ "codeconnections:GetConnection" ], "Resource": [ "arn:aws:codeconnections:*:*:connection/*" ] }, { "Sid": "TagCodeConnectionsStatement", "Effect": "Allow", "Action": [ "codeconnections:TagResource" ], "Resource": [ "arn:aws:codeconnections:*:*:connection/*" ], "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": [ "for-use-with-all-datazone-projects" ] }, "StringEquals": { "aws:RequestTag/for-use-with-all-datazone-projects": "true" } } }, { "Sid": "UntagCodeConnectionsStatement", "Effect": "Allow", "Action": [ "codeconnections:UntagResource" ], "Resource": [ "arn:aws:codeconnections:*:*:connection/*" ], "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": "for-use-with-all-datazone-projects" } } }, { "Sid": "SSMParameterStatement", "Effect": "Allow", "Action": [ "ssm:GetParameter", "ssm:GetParametersByPath", "ssm:PutParameter", "ssm:DeleteParameter" ], "Resource": [ "arn:aws:ssm:*:*:parameter/amazon/datazone/q*", "arn:aws:ssm:*:*:parameter/amazon/datazone/genAI*", "arn:aws:ssm:*:*:parameter/amazon/datazone/profiles*" ] }, { "Sid": "UseKMSKeyPermissionsStatement", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:ResourceTag/EnableKeyForAmazonDataZone": "true" }, "Null": { "aws:ResourceTag/EnableKeyForAmazonDataZone": "false" }, "StringLike": { "kms:ViaService": "ssm.*.amazonaws.com" } } }, { "Sid": "SecurityPolicyStatement", "Effect": "Allow", "Action": [ "aoss:GetSecurityPolicy", "aoss:CreateSecurityPolicy" ], "Resource": [ "*" ], "Condition": { "StringLike": { "aoss:collection": "genai-studio-*" } } }, { "Sid": "GetFoundationModelStatement", "Effect": "Allow", "Action": [ "bedrock:GetFoundationModel", "bedrock:GetFoundationModelAvailability" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*" ] }, { "Sid": "GetInferenceProfileStatement", "Effect": "Allow", "Action": [ "bedrock:GetInferenceProfile" ], "Resource": [ "arn:aws:bedrock:*:*:inference-profile/*", "arn:aws:bedrock:*:*:application-inference-profile/*" ] }, { "Sid": "ApplicationInferenceProfileStatement", "Effect": "Allow", "Action": [ "bedrock:CreateInferenceProfile" ], "Resource": [ "arn:aws:bedrock:*:*:application-inference-profile/*" ], "Condition": { "Null": { "aws:RequestTag/AmazonDataZoneProject": "true", "aws:RequestTag/AmazonDataZoneDomain": "false" } } }, { "Sid": "TagApplicationInferenceProfileStatement", "Effect": "Allow", "Action": [ "bedrock:TagResource" ], "Resource": [ "arn:aws:bedrock:*:*:application-inference-profile/*" ], "Condition": { "Null": { "aws:ResourceTag/AmazonDataZoneProject": "true", "aws:RequestTag/AmazonDataZoneProject": "true", "aws:ResourceTag/AmazonDataZoneDomain": "false", "aws:RequestTag/AmazonDataZoneDomain": "false" } } }, { "Sid": "DeleteApplicationInferenceProfileStatement", "Effect": "Allow", "Action": [ "bedrock:DeleteInferenceProfile" ], "Resource": [ "arn:aws:bedrock:*:*:application-inference-profile/*" ], "Condition": { "Null": { "aws:ResourceTag/AmazonDataZoneProject": "true", "aws:ResourceTag/AmazonDataZoneDomain": "false" } } } ] }

정책 고려 사항 및 제한

AmazonDataZoneFullAccess 정책에서 다루지 않는 특정 기능이 있습니다.

  • 자체 AWS KMS 키로 Amazon DataZone 도메인을 생성하는 경우 도메인 생성에 성공하려면에 kms:CreateGrant 대한 권한이 있고, 해당 키가 listDataSources 및와 같은 다른 Amazon DataZone APIs 호출하려면에 kms:GenerateDataKey kms:Decrypt 대한 권한이 있어야 합니다createDataSource. 또한 해당 키의 리소스 정책에 kms:CreateGrant, kms:Decrypt, kms:GenerateDataKey, 및 kms:DescribeKey에 대한 권한도 있어야 합니다.

    기본 서비스 소유 KMS 키를 사용하는 경우 필요하지 않습니다.

    자세한 내용은 AWS Key Management Service 단원을 참조하십시오.

  • Amazon DataZone 콘솔에서 역할 생성업데이트를 사용하려면 관리자 권한이 있거나 IAM 역할을 생성하고 정책을 생성/업데이트하는 데 필요한 IAM 권한이 있어야 합니다. 필수 권한에는 iam:CreateRole, iam:CreatePolicy, iam:CreatePolicyVersion, iam:DeletePolicyVersion, 및 iam:AttachRolePolicy 권한이 포함됩니다.

  • AWS IAM Identity Center 사용자 로그인이 활성화된 상태에서 Amazon DataZone에서 새 도메인을 생성하거나 Amazon DataZone의 기존 도메인에 대해 새 도메인을 활성화하는 경우 다음에 대한 권한이 있어야 합니다.

    • organizations:DescribeOrganization

    • organizations:ListDelegatedAdministrators

    • sso:CreateInstance

    • sso:ListInstances

    • sso:GetSharedSsoConfiguration

    • sso:PutApplicationGrant

    • sso:PutApplicationAssignmentConfiguration

    • sso:PutApplicationAuthenticationMethod

    • sso:PutApplicationAccessScope

    • sso:CreateApplication

    • sso:DeleteApplication

    • sso:CreateApplicationAssignment

    • sso:DeleteApplicationAssignment

    • sso-directory:CreateUser

    • sso-directory:SearchUsers

    • sso:ListApplications

  • Amazon DataZone에서 AWS 계정 연결 요청을 수락하려면 ram:AcceptResourceShareInvitation 권한이 있어야 합니다.

  • SageMaker Unified Studio 네트워크 설정에 필요한 리소스를 생성하려면 다음에 대한 권한이 있어야 하며 AmazonVpcFullAccess 정책을 연결해야 합니다.

    • iam:PassRole

    • cloudformation:CreateStack