Ejemplos de resúmenes de políticas
Los siguientes ejemplos muestran políticas JSON con sus resúmenes de política, resúmenes de servicio y resúmenes de acción asociados para ayudarle a comprender los permisos que se dan por medio de una política.
Política 1: DenyCustomerBucket
Esta política demuestra un permitir y un denegar para el mismo servicio.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccess", "Effect": "Allow", "Action": ["s3:*"], "Resource": ["*"] }, { "Sid": "DenyCustomerBucket", "Action": ["s3:*"], "Effect": "Deny", "Resource": ["arn:aws:s3:::customer", "arn:aws:s3:::customer/*" ] } ] }
Resumen de la política DenyCustomerBucket:

Resumen del servicio DenyCustomerBucket S3 (denegación explícita):

Resumen de la acción GetObject (lectura):

Política 2: DynamoDbRowCognitoID
Esta política proporciona acceso de nivel de filas a Amazon DynamoDB en función del ID de Amazon Cognito del usuario.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem" ], "Resource": [ "arn:aws:dynamodb:us-west-1:123456789012:table/myDynamoTable" ], "Condition": { "ForAllValues:StringEquals": { "dynamodb:LeadingKeys": [ "${cognito-identity.amazonaws.com:sub}" ] } } } ] }
Resumen de la política DynamoDbRowCognitoID:

Resumen del servicio DynamoDbRowCognitoID DynamoDB (permitir):

Resumen de la política GetItem (enumerar):

Política 3: MultipleResourceCondition
Esta política contiene varios recursos y condiciones.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": ["arn:aws:s3:::Apple_bucket/*"], "Condition": {"StringEquals": {"s3:x-amz-acl": ["public-read"]}} }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": ["arn:aws:s3:::Orange_bucket/*"], "Condition": {"StringEquals": { "s3:x-amz-acl": ["custom"], "s3:x-amz-grant-full-control": ["1234"] }} } ] }
Resumen de la política MultipleResourceCondition:

Resumen del servicio MultipleResourceCondition S3 (permitir):

Resumen de la acción PutObject (escritura):

Política 4: EC2_Troubleshoot
La siguiente política permite a los usuarios obtener una captura de pantalla de una instancia Amazon EC2 en ejecución, lo que puede ayudarle a la resolución de problemas de EC2. Esta política también permite visualizar información sobre los elementos del bucket de desarrollador de Amazon S3.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:GetConsoleScreenshot" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::developer" ] } ] }
Resumen de la política EC2_Troubleshoot:

Resumen de la política EC2_Troubleshoot S3 (permitir):

Resumen de la política ListBucket (enumerar):

Política 5: Unrecognized_Service_Action
El objetivo de la siguiente política era proporcionar acceso completo a DynamoDB,
pero dicho acceso da un error porque dynamodb
está mal escrito como dynamobd
. Esta política se ha diseñado para permitir el acceso a algunas acciones de Amazon
EC2 en la región us-east-2
, pero deniega dicho acceso a la región ap-northeast-2
. Sin embargo, el acceso a las instancias de reinicio en la región ap-northeast-2
no se deniega explícitamente debido a la o
no reconocida en medio de la acción RebootInstances
. En este ejemplo se muestra cómo puede utilizar resúmenes de políticas para encontrar
errores en sus políticas. Para aprender a editar políticas en función de la información
de una política de resumen, consulte Edición de políticas para solucionar mensajes de advertencia.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamobd:*" ], "Resource": [ "*" ] }, { "Action": [ "ec2:RunInstances", "ec2:StartInstances", "ec2:StopInstances", "ec2:ReboootInstances" ], "Resource": "*", "Effect": "Deny", "Condition": { "StringEquals": { "ec2:Region": "ap-northeast-2" } } }, { "Action": [ "ec2:RunInstances", "ec2:StartInstances", "ec2:StopInstances", "ec2:RebootInstances" ], "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ec2:Region": "us-east-2" } } } ] }
Resumen de la política Unrecognized_Service_Action:

Resumen del servicio Unrecognized_Service_Action EC2 (denegación explícita):

Resumen de la acción Unrecognized_Service_Action StartInstances (escritura):

Política 6: CodeBuild_CodeCommit_CodeDeploy
Esta política proporciona acceso a recursos CodeBuild, CodeCommit y CodeDeploy específicos.
Dado que estos recursos son específicos de cada servicio, aparecen únicamente con
el servicio correspondiente. Si incluye un recurso que no coincide con ninguno de
los servicios del elemento Action
, el recurso aparece en todos los resúmenes de acción.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1487980617000", "Effect": "Allow", "Action": [ "codebuild:*", "codecommit:*", "codedeploy:*" ], "Resource": [ "arn:aws:codebuild:us-east-2:123456789012:project/my-demo-project", "arn:aws:codecommit:us-east-2:123456789012:MyDemoRepo", "arn:aws:codedeploy:us-east-2:123456789012:application:WordPress_App", "arn:aws:codedeploy:us-east-2:123456789012:instance/AssetTag*" ] } ] }
Resumen de la política CodeBuild_CodeCommit_CodeDeploy:

Resumen del servicio CodeBuild_CodeCommit_CodeDeploy CodeBuild (permitir):

Resumen de la acción CodeBuild_CodeCommit_CodeDeploy StartBuild (escritura):
