AWS SAM policy templates - AWS Serverless Application Model

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.

AWS SAM policy templates

AWS SAMle permite elegir a partir de una lista de plantillas de política para reducir los permisos de sus funciones de Lambda de a los recursos que usa su aplicación.

AWS SAMaplicaciones en elAWS Serverless Application Repositoryque utilizanAWS Serverless Application Repository.

Si desea solicitar que se agregue una nueva plantilla de política, haga lo siguiente:

  1. Envía una solicitud de extracción según el archivo origen policy_templates.json endevelop branch of the AWS SAM GitHub proyecto. Puede encontrar el archivo origen enpolicy_templates.jsonen la GitHub sitio web.

  2. Enviar una incidencia en laAWS SAM GitHub que incluye los motivos de la solicitud de extracción y un enlace a la solicitud. Utilice este enlace para enviar un nuevo problema: AWS Serverless Application Model: Problemas.

Sintaxis

Para cada plantilla de política que especifique en suAWS SAM, siempre debe especificar un objeto que contenga los valores de marcador de posición de la plantilla de política. Si una plantilla de política no requiere ningún valor de marcador de posición, debe especificar un objeto vacío.

YAML

MyFunction: Type: AWS::Serverless::Function Properties: Policies: - PolicyTemplateName1: # Policy template with placeholder value Key1: Value1 - PolicyTemplateName2: {} # Policy template with no placeholder value

Ejemplos

Ejemplo 1: Plantilla de política

El siguiente ejemplo muestra que la plantilla de política SQSPollerPolicy espera QueueName como recurso. LaAWS SAMrecupera el nombre de la plantilla»MyQueue«cola de Amazon SQS, que se puede crear en la misma aplicación o solicitar como un parámetro de la aplicación.

MyFunction: Type: 'AWS::Serverless::Function' Properties: CodeUri: ${codeuri} Handler: hello.handler Runtime: python2.7 Policies: - SQSPollerPolicy: QueueName: !GetAtt MyQueue.QueueName

Ejemplo 2: Plantilla de política

El ejemplo siguiente contiene la plantilla de política CloudWatchPutMetricPolítica de, que no tiene valores de marcador de posición.

nota

Aunque no haya valores de marcador de posición, debe especificar un objeto vacío; de lo contrario, se producirá un error.

MyFunction: Type: 'AWS::Serverless::Function' Properties: CodeUri: ${codeuri} Handler: hello.handler Runtime: python2.7 Policies: - CloudWatchPutMetricPolicy: {}

Tabla de

A continuación se muestra una tabla de las plantillas de directivas disponibles.

Plantilla de política Descripción
AcmGetCertificatePolicy Otorga permiso para leer un certificado deAWS Certificate Manager.
AMIDescribePolicy Concede permiso para describir las imágenes de máquina de Amazon (AMI).
AthenaQueryPolítica de Otorga permisos para ejecutar consultas de Athena.
AWSSecretsManagerGetSecretValuePolicy Concede permiso para obtener el valor de secreto paraAWS Secrets Managersecreta.
AWSSecretsManagerRotationPolicy Da permiso para rotar un secreto enAWS Secrets Manager.
CloudFormationDescribeStacksPolítica de Da permiso para describirAWS CloudFormationpilas.
CloudWatchDashboardPolicy Otorga permisos para poner en funcionamiento las métricas CloudWatch dashboards.
CloudWatchDescribeAlarmHistoryPolicy Da permiso para describir CloudWatch historial de alarma.
CloudWatchPutMetricPolítica de Concede permiso para enviar métricas a CloudWatch.
CodeCommitCrudPolicy Otorga permisos para crear/leer/actualizar/eliminar objetos dentro de un CodeCommit .
CodeCommitReadPolicy Otorga permisos para leer objetos dentro de un CodeCommit.
CodePipelineLambdaExecutionPolítica de Otorga permiso para una función de Lambda invocada por CodePipeline para informar del estado del trabajo.
CodePipelineReadOnlyPolítica de Concede permiso de lectura para obtener detalles acerca de CodePipeline canalizaciones.
ComprehendBasicAccessPolicy Concede permiso para detectar entidades, frases clave, idiomas y sentimientos.
CostExplorerReadOnlyPolítica de Otorga permiso de solo lectura a las API de Cost Explorer de solo lectura para el historial de facturación
DynamoDBBackupFullAccessPolicy Concede permiso de lectura y escritura a las copias de seguridad bajo demanda de DynamoDB para una tabla.
DynamoDBCrudPolicy Concede permisos de creación, lectura, actualización y eliminación a una tabla de Amazon DynamoDB.
DynamoDBReadPolicy Concede permiso de solo lectura a una tabla de DynamoDB.
DynamoDBReconfigurePolicy Concede permiso para volver a configurar una tabla de DynamoDB.
DynamoDBRestoreFromBackupPolicy Otorga permiso para restaurar una tabla de DynamoDB desde la copia de seguridad.
DynamoDBStreamReadPolítica de Otorga permiso para describir y leer transmisiones y registros de DynamoDB.
DynamoDBWritePolicy Concede permiso de solo escritura a una tabla de DynamoDB.
EC2CopyImagePolítica de Concede permiso para copiar imágenes de Amazon EC2.
EC2DescribePolicy Concede permiso para describir instancias de Amazon Elastic Compute Cloud (Amazon EC2).
EcsRunTaskPolicy Concede permiso para iniciar una nueva tarea para una definición de tarea.
EFSWriteAccessPolítica de Otorga permiso para montar un sistema de archivos Amazon EFS con acceso de escritura.
EKSDescribePolicy Otorga permiso para describir o publicar clústeres de Amazon EKS.
ElasticMapReduceAddJobFlowStepsPolicy Concede permiso para agregar nuevos pasos a un clúster en ejecución.
ElasticMapReduceCancelStepsPolicy Concede permiso para cancelar un paso o pasos pendientes en un clúster en ejecución.
ElasticMapReduceModifyInstanceFleetPolítica de Otorga permiso para enumerar detalles y modificar capacidades, por ejemplo, flotas dentro de un clúster.
ElasticMapReduceModifyInstanceGroupsPolítica de Otorga permiso para enumerar detalles y modificar la configuración de los grupos de instancias dentro de un clúster.
ElasticMapReduceSetTerminationProtectionPolítica de Concede permiso para establecer la protección de terminación para un clúster.
ElasticMapReduceTerminateJobFlowsPolítica de Concede permiso para cerrar un clúster.
ElasticsearchHttpPostPolicy Otorga permiso POST a Amazon OpenSearch Servicio
EventBridgePutEventsPolítica de Concede permisos para enviar eventos a EventBridge.
FilterLogEventsPolicy Otorga permiso para filtrar CloudWatch Registra los eventos de un grupo de registro especificado.
FirehoseCrudPolítica de Concede permiso para crear, escribir, actualizar y eliminar un flujo de entrega de Kinesis Data Firehose.
FirehoseWritePolítica de Concede permiso para escribir en un flujo de entrega de Kinesis Data Firehose.
KinesisCrudPolítica de Otorga permiso para crear, publicar y eliminar una transmisión de Amazon Kinesis.
KinesisStreamReadPolicy Concede permiso para publicar y leer un flujo de Amazon Kinesis.
KMSDecryptPolicy Otorga permiso para descifrar con unAWS Key Management Service(AWS KMS).
KMSEncryptPolicy Otorga permiso para cifrar con unAWS Key Management Service(AWS KMS).
LambdaInvokePolítica de Concede permiso para invocar unAWS Lambdafunción, alias o versión.
MobileAnalyticsWriteOnlyAccessPolicy Concede permiso de solo escritura para incorporar datos de eventos para todos los recursos de aplicación.
OrganizationsListAccountsPolicy Otorga permiso de solo lectura para enumerar nombres e ID de cuentas infantiles.
PinpointEndpointAccessPolicy Concede permiso para obtener y actualizar los puntos de enlace de una aplicación de Amazon Pinpoint.
PollyFullAccessPolicy Otorga permiso de acceso total a los recursos del léxico de Amazon Polly.
RekognitionDetectOnlyPolicy Concede permiso para detectar caras, etiquetas y texto.
RekognitionFacesManagementPolicy Otorga permiso para añadir, eliminar y buscar rostros en una colección de Amazon Rekognition.
RekognitionFacesPolítica de Concede permiso para comparar y detectar caras y etiquetas.
RekognitionLabelsPolítica de Otorga permiso para detectar etiquetas de objetos y moderación.
RekognitionNoDataAccessPolítica de Concede permiso para comparar y detectar caras y etiquetas.
RekognitionReadPolítica de Otorga permiso para enumerar y buscar rostros.
RekognitionWriteOnlyAccessPolítica de Otorga permiso para crear caras de colección e índice.
route53ChangeResourceRecordSetsPolítica de Concede permiso para cambiar conjuntos de registros de recursos en Route 53.
S3CrudPolicy Otorga permisos de creación, lectura, actualización y eliminación para actuar sobre los objetos de un bucket de Amazon S3.
S3FullAccessPolítica de Otorga permiso de acceso total para actuar sobre los objetos de un bucket de Amazon S3.
S3ReadPolicy Concede permiso de solo lectura para leer objetos en un bucket de Amazon Simple Storage Service (Amazon S3).
S3WritePolicy Concede permiso de escritura para escribir objetos en un bucket de Amazon S3.
SageMakerCreateEndpointConfigPolicy Concede permiso para crear una configuración de punto de conexión en SageMaker.
SageMakerCreateEndpointPolítica de Concede permiso para crear un nuevo punto de conexión en SageMaker.
ServerlessRepoReadWriteAccessPolicy Concede permiso para crear y enumerar aplicaciones enAWS Serverless Application Repositoryservicioservicio.
SESBulkTemplatedCrudPolicy Otorga permiso para enviar correos electrónicos, correos electrónicos con plantilla, correos electrónicos masivos con plantilla y verificar la identidad.
SESCrudPolicy Otorga permiso para enviar correos electrónicos y verificar la identidad.
SESEmailTemplateCrudPolicy Otorga permiso para crear, obtener, publicar, actualizar y eliminar plantillas de correo electrónico de Amazon SES.
SESSendBouncePolítica de Da SendBounce permiso para una identidad de Amazon Simple Email Service (Amazon SES).
SNSCrudPolicy Otorga permiso para crear, publicar y suscribirse a temas de Amazon SNS.
SNSPublishMessagePolítica de Concede permiso para publicar un mensaje en un tema de Amazon Simple Notification Service (Amazon SNS).
SQSPollerPolicy Concede permiso para sondear una cola de Amazon Simple Queue Service (Amazon SQS).
SQSSendMessagePolítica de Concede permiso para enviar mensajes a una cola de Amazon SQS.
SSMParameterReadPolítica de Otorga permiso para acceder a parámetros desde un almacén de parámetros de Amazon EC2 Systems Manager (SSM) para cargar secretos en esta cuenta.
StepFunctionsExecutionPolicy Concede permiso para iniciar una ejecución de máquina de estado de Step Functions.
TextractDetectAnalyzePolicy Da acceso para detectar y analizar documentos con Amazon Textract.
TextractGetResultPolicy Da acceso a documentos detectados y analizados de Amazon Textract.
TextractPolicy Da acceso completo a Amazon Textract.
VPC:AccessPolicy Da acceso para crear, eliminar, describir y separar interfaces de red elásticas.

Solución de problemas

Error CLI «Debe especificar valores de parámetros válidos para la plantilla de política '<policy-template-name>'»

Al ejecutar sam build, verá el siguiente error:

"Must specify valid parameter values for policy template '<policy-template-name>'"
            

Esto significa que no pasó un objeto vacío al declarar una plantilla de política que no tiene ningún valor de marcador de posición.

Para solucionarlo, declare la política como en el siguiente ejemplo paraCloudWatchPutMetricPolítica de.

MyFunction: Policies: - CloudWatchPutMetricPolicy: {}