Ejemplos de declaraciones de políticas administrativas de IAM para Neptune - Amazon Neptune

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de declaraciones de políticas administrativas de IAM para Neptune

Ejemplos de políticas administrativas generales

En los siguientes ejemplos, se muestra cómo crear políticas administrativas de Neptune que concedan permisos para realizar diversas acciones de administración en un clúster de base de datos.

Política que impide que un usuario de IAM elimine una instancia de base de datos específica

A continuación, se muestra un ejemplo de política que impide que un usuario de IAM elimine una instancia de base de datos de Neptune específica:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyDeleteOneInstance", "Effect": "Deny", "Action": "rds:DeleteDBInstance", "Resource": "arn:aws:rds:us-west-2:123456789012:db:my-instance-name" } ] }

La política concede permiso para crear nuevas instancias de base de datos

A continuación, se muestra un ejemplo de una política que permite a un usuario de IAM crear instancias de base de datos en un clúster de base de datos de Neptune específico:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateInstance", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": "arn:aws:rds:us-west-2:123456789012:cluster:my-cluster" } ] }

Política que concede permiso para crear nuevas instancias de base de datos que usen un grupo de parámetros de base de datos específico

A continuación, tenemos un ejemplo de política que permite a un usuario de IAM crear instancias de base de datos en un clúster de base de datos específico (aquí us-west-2) en un clúster de base de datos de Neptune específico utilizando solo un grupo de parámetros de base de datos específico.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateInstanceWithPG", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": [ "arn:aws:rds:us-west-2:123456789012:cluster:my-cluster", "arn:aws:rds:us-west-2:123456789012:pg:my-instance-pg" ] } ] }

Política que concede permiso para describir cualquier recurso

A continuación, tenemos un ejemplo de política que permite a un usuario de IAM describir cualquier recurso de Neptune.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDescribe", "Effect": "Allow", "Action": "rds:Describe*", "Resource": * } ] }

Ejemplos de políticas administrativas basadas en etiquetas

En los siguientes ejemplos, se muestra cómo crear políticas administrativas de Neptune que se etiquetan para filtrar permisos para varias acciones de administración en un cluster de base de datos.

Ejemplo 1: conceder permiso para acciones en un recurso mediante una etiqueta personalizada que puede tomar varios valores

La política siguiente permite el uso de la API ModifyDBInstance, CreateDBInstance o DeleteDBInstance en cualquier instancia de base de datos que tenga la etiqueta env establecida en dev o test:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDevTestAccess", "Effect": "Allow", "Action": [ "rds:ModifyDBInstance", "rds:CreateDBInstance", "rds:DeleteDBInstance" ], "Resource": "*", "Condition": { "StringEquals": { "rds:db-tag/env": [ "dev", "test" ], "rds:DatabaseEngine": "neptune" } } } ] }

Ejemplo 3: limitar el conjunto de claves y valores de etiquetas que se pueden usar para etiquetar un recurso

En esta política, se usa una clave Condition para permitir que una etiqueta que tiene la clave env y un valor de test, qa o dev se añada a un recurso:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowTagAccessForDevResources", "Effect": "Allow", "Action": [ "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ], "Resource": "*", "Condition": { "StringEquals": { "rds:req-tag/env": [ "test", "qa", "dev" ], "rds:DatabaseEngine": "neptune" } } } ] }

Ejemplo 3: permitir el acceso completo a los recursos de Neptune en función de aws:ResourceTag

La siguiente política es similar al primer ejemplo anterior, pero utiliza en su lugar aws:ResourceTag.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowFullAccessToDev", "Effect": "Allow", "Action": [ "rds:*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "dev", "rds:DatabaseEngine": "neptune" } } } ] }