AWS política gerenciada: AmazonDataZoneFullAccess - Amazon DataZone

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS política gerenciada: AmazonDataZoneFullAccess

É possível anexar a política AmazonDataZoneFullAccess às identidades do IAM.

Esta política fornece acesso total à Amazon DataZone por meio do AWS Management Console. Essa política também tem permissões para o AWS KMS para parâmetros SSM criptografados. A chave KMS deve ser marcada com EnableKeyForAmazonDataZone para permitir a descriptografia dos parâmetros do SSM.

Detalhes de permissões

Esta política inclui as seguintes permissões:

  • datazone— concede aos diretores acesso total à Amazon DataZone por meio do AWS Management Console.

  • kms— Permite que os diretores listem aliases, descrevam chaves e descriptografem chaves.

  • s3— Permite que os diretores escolham buckets S3 existentes ou criem novos para armazenar dados da Amazon. DataZone

  • ram— Permite que os diretores compartilhem DataZone domínios da Amazon entre. Contas da AWS

  • iam: permite que as entidades principais passem perfis e obtenham políticas.

  • sso: permite que as entidades principais obtenham as regiões em que o AWS IAM Identity Center está habilitado.

  • secretsmanager: permite que as entidades principais criem, marquem e listem os segredos com um prefixo específico.

  • aoss— permite que os diretores criem e recuperem informações para políticas de segurança OpenSearch sem servidor.

  • bedrock— permite que os diretores criem, listem e recuperem informações para perfis de inferência e modelos básicos.

  • codeconnections— permite que os diretores excluam, recuperem informações, listem conexões e gerenciem tags para conexões.

  • codewhisperer— Permite que os diretores listem CodeWhisperer perfis.

  • ssm— Permite que os diretores coloquem, excluam e recuperem informações para os parâmetros.

  • redshift— Permite que os diretores descrevam clusters e listem grupos de trabalho sem servidor

  • glue— Permite que os diretores obtenham bancos de dados.

{ "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" } } } ] }

Considerações e limitações da política

Há certas funcionalidades que a política AmazonDataZoneFullAccess não cobre.

  • Se você criar um DataZone domínio da Amazon com sua própria AWS KMS chave, deverá ter as permissões kms:CreateGrant para que a criação do domínio seja bem-sucedida e kms:Decrypt para kms:GenerateDataKey que essa chave invoque outra Amazon DataZoneAPIs , como listDataSources e. createDataSource E você também deve ter as permissões para kms:CreateGrant, kms:Decrypt, kms:GenerateDataKey e kms:DescribeKey na política de recursos dessa chave.

    Se você usar a chave do KMS padrão de propriedade do serviço, isso não será necessário.

    Para obter mais informações, consulte AWS Key Management Service.

  • Se você quiser usar as funcionalidades de criação e atualização de funções no DataZone console da Amazon, você deve ter privilégios de administrador ou ter as permissões necessárias do IAM para criar funções do IAM e criar/atualizar políticas. As permissões necessárias incluem as permissões iam:CreateRole, iam:CreatePolicy, iam:CreatePolicyVersion, iam:DeletePolicyVersion e iam:AttachRolePolicy.

  • Se você criar um novo domínio na Amazon DataZone com o login de AWS IAM Identity Center usuário ativado, ou se você ativá-lo para um domínio existente na Amazon DataZone, você deve ter permissões para o seguinte:

    • organizações: DescribeOrganization

    • organizações: ListDelegatedAdministrators

    • então: CreateInstance

    • então: ListInstances

    • então: GetSharedSsoConfiguration

    • então: PutApplicationGrant

    • então: PutApplicationAssignmentConfiguration

    • então: PutApplicationAuthenticationMethod

    • então: PutApplicationAccessScope

    • então: CreateApplication

    • então: DeleteApplication

    • então: CreateApplicationAssignment

    • então: DeleteApplicationAssignment

    • diretório sso: CreateUser

    • diretório sso: SearchUsers

    • então: ListApplications

  • Para aceitar uma solicitação de associação de AWS conta na Amazon DataZone, você deve ter a ram:AcceptResourceShareInvitation permissão.

  • Se quiser criar o recurso necessário para a configuração de rede do SageMaker Unified Studio, você deve ter permissões para o seguinte e anexar a AmazonVpcFullAccess política:

    • objetivo: PassRole

    • formação de nuvens: CreateStack