AWS SAM modelos de políticas - AWS Serverless Application Model

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 SAM modelos de políticas

AWS SAM permite que você escolha de uma lista de modelos de política para definir o escopo das permissões de suas Lambda funções para os recursos que são usados pelo seu aplicativo.

AWS SAM aplicações no AWS Serverless Application Repository que utilizam modelos de políticas não requerem quaisquer confirmações especiais do cliente para implementar a aplicação a partir do AWS Serverless Application Repository.

Se deseja solicitar um novo modelo de política a ser adicionado, faça o seguinte:

  1. Envie um pedido pull em relação ao ficheiro de origem policy_templates.json no develop ramo do AWS SAM GitHub projeto. Pode encontrar o ficheiro de origem em modelos_política.json na GitHub do nosso website.

  2. Enviar um problema na AWS SAM GitHub projeto que inclui os motivos para o seu pedido de retirada e uma ligação para o pedido. Utilize esta ligação para enviar um novo número: Modelo de aplicação sem servidor AWS: Problemas.

Syntax

Para cada modelo de apólice que especificar na sua AWS SAM ficheiro modelo, tem de especificar sempre um objeto que contenha os valores do marcador de posição do modelo da apólice. Se um modelo de apólice não exigir quaisquer valores de espaço reservado, tem de especificar um objeto vazio.

YAML

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

Examples

Exemplo 1: Modelo de apólice com valores de espaço reservado

O exemplo a seguir mostra que o modelo de política SQSPollerPolicy espera um QueueName como recurso. lá estão AWS SAM modelo recupera o nome do "MyQueue" Amazon SQS na mesma aplicação ou pedida como um parâmetro para a aplicação.

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

Exemplo 2: Modelo de apólice sem valores de espaço reservado

O exemplo a seguir contém o modelo de política CloudWatchPutMetricPolicy, que não tem valores de espaços reservados.

nota

Mesmo que não existam valores de espaço reservado, deve especificar um objeto vazio, caso contrário resultará num erro.

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

Tabela de modelos de apólice

Segue-se uma tabela dos modelos de políticas disponíveis.

Modelo de política Description (Descrição)
SQSPollerPolicy Dá permissão para interrogar um Amazon Simple Queue Service (Amazon SQS) na fila.
LambdaInvokePolicy Dá permissão para invocar um AWS Lambda função, nome alternativo ou versão.
CloudWatchDescribeAlarmHistoryPolicy Dá permissão para descrever CloudWatch histórico de alarmes.
CloudWatchPutMetricPolicy Dá permissão para enviar métricas para CloudWatch.
EC2DescribePolicy Dá permissão para descrever Amazon Elastic Compute Cloud (Amazon EC2) instâncias.
DynamoDBCrudPolicy Dá permissão para criar, ler, atualizar e excluir Amazon DynamoDB tabela.
DynamoDBReadPolicy Dá permissão apenas de leitura a um DynamoDB tabela.
DynamoDBWritePolicy Dá permissão apenas de escrita para um DynamoDB tabela.
DynamoDBReconfigurePolicy Dá permissão para reconfigurar um DynamoDB tabela.
SESSendBouncePolicy Dá SendBounce uma autorização para Amazon Simple Email Service (Amazon SES) identidade.
ElasticsearchHttpPostPolicy Dá permissão POST para Amazon Elasticsearch Service.
S3ReadPolicy Dá permissão apenas de leitura para objetos em um Amazon Simple Storage Service (Amazon S3) balde.
S3WritePolicy Dá permissão de escrita para objetos em um Amazon S3 balde.
S3CrudPolicy Dá para criar, ler, atualizar e excluir permissão para objetos em um Amazon S3 balde.
AMIDescribePolicy Dá permissão para descrever as imagens Amazon Machine (AMIs).
CloudFormationDescribeStacksPolicy Dá permissão para descrever AWS CloudFormation empilhados.
RekognitionDetectOnlyPolicy Dá permissão para detetar rostos, rótulos e texto.
RekognitionNoDataAccessPolicy Dá permissão para comparar e detetar rostos e etiquetas.
RekognitionReadPolicy Dá permissão para listar e pesquisar faces.
RekognitionWriteOnlyAccessPolicy Dá permissão para criar rostos de coleção e de indexação.
SQSSendMessagePolicy Dá permissão para enviar mensagens para um Amazon SQS na fila.
SNSPublishMessagePolicy Dá permissão para publicar uma mensagem num Amazon Simple Notification Service (Amazon SNS).
VPCAccessPolicy Dá acesso para criar, eliminar, descrever e remover interfaces de rede elásticas.
DynamoDBStreamReadPolicy Dá permissão para descrever e ler DynamoDB e registos.
KinesisStreamReadPolicy Dá permissão para listar e ler um Amazon Kinesis fluxo.
SESCrudPolicy Dá permissão para enviar e-mails e verificar a identidade.
SNSCrudPolicy Dá permissão para criar, publicar e subscrever Amazon SNS tópicos.
KinesisCrudPolicy Dá permissão para criar, publicar e excluir um Amazon Kinesis fluxo.
KMSDecryptPolicy Dá permissão para desencriptar com um AWS Key Management Service (AWS KMS) tecla.
KMSEncryptPolicy Dá permissão para encriptar com um AWS Key Management Service (AWS KMS) tecla.
PollyFullAccessPolicy Dá permissão de acesso total para Amazon Polly recursos léxicos.
S3FullAccessPolicy Dá permissão de acesso total a objetos num Amazon S3 balde.
CodePipelineLambdaExecutionPolicy Dá permissão para um Lambda função invocada por CodePipeline para comunicar o estado do trabalho.
ServerlessRepoReadWriteAccessPolicy Dá permissão para criar e listar aplicativos na seção AWS Serverless Application Repository serviço.
EC2CopyImagePolicy Dá permissão para copiar Amazon EC2 imagens.
AWSSecretsManagerRotationPolicy Dá permissão para rodar um segredo em AWS Secrets Manager.
AWSSecretsManagerGetSecretValuePolicy Dá permissão para obter o valor secreto para o AWS Secrets Manager secreto.
CodePipelineReadOnlyPolicy Dá permissão de leitura para obter detalhes sobre um CodePipeline em linha de produção.
CloudWatchDashboardPolicy Dá permissão para colocar métricas a operar CloudWatch painéis de controlo.
RekognitionFacesManagementPolicy Dá permissão para adicionar, eliminar e pesquisar faces num Amazon Rekognition coleção.
RekognitionFacesPolicy Dá permissão para comparar e detetar rostos e etiquetas.
RekognitionLabelsPolicy Dá permissão para detetar rótulos de objeto e moderação.
DynamoDBBackupFullAccessPolicy Dá permissão de leitura e escrita para DynamoDB cópias de segurança a pedido para uma tabela.
DynamoDBRestoreFromBackupPolicy Dá permissão para restaurar um DynamoDB da cópia de segurança.
ComprehendBasicAccessPolicy Dá permissão para a deteção de entidades, frases-chave, idiomas e sentimentos.
MobileAnalyticsWriteOnlyAccessPolicy Dá permissão apenas de escrita para colocar dados de eventos para todos os recursos da aplicação.
PinpointEndpointAccessPolicy Dá permissão para obter e atualizar parâmetros de avaliação para um Amazon Pinpoint aplicação.
FirehoseWritePolicy Dá permissão para escrever para um Kinesis Data Firehose fluxo de entrega.
FirehoseCrudPolicy Dá permissão para criar, escrever, atualizar e excluir um Kinesis Data Firehose fluxo de entrega.
EKSDescribePolicy Dá permissão para descrever ou listar Amazon EKS conjuntos de amostras.
CostExplorerReadOnlyPolicy Dá permissão apenas de leitura ao Cost Explorer APIs para o histórico de faturação.
OrganizationsListAccountsPolicy Dá permissão apenas de leitura para listar nomes de contas secundárias e IDs.
SESBulkTemplatedCrudPolicy Dá permissão para enviar e-mails, e-mails modelo, e-mails modelos em massa e verificar a identidade.
SESEmailTemplateCrudPolicy Dá permissão para criar, obter, listar, atualizar e eliminar Amazon SES modelos de e-mail.
FilterLogEventsPolicy Dá permissão para filtrar CloudWatch Logs eventos de um grupo de registo especificado.
SSMParameterReadPolicy Dá permissão para aceder a um parâmetro a partir de um Amazon EC2 Systems Manager (SSM) para carregar segredos nesta conta.
StepFunctionsExecutionPolicy Dá permissão para iniciar um Step Functions estado execução da máquina.
CodeCommitCrudPolicy Dá permissões para criar/ler/atualizar/eliminar objetos dentro de um determinado CodeCommit repositório.
CodeCommitReadPolicy Dá permissão para ler objetos dentro de um CodeCommit repositório.
AthenaQueryPolicy Dá permissões para executar Athena consultas.
TextractPolicy Dá acesso total a Amazon Textract.
TextractDetectAnalyzePolicy Dá acesso para detetar e analisar documentos com Amazon Textract.
TextractGetResultPolicy Dá acesso para obter documentos detetados e analisados de Amazon Textract.
EventBridgePutEventsPolicy Dá permissões para enviar eventos para EventBridge.
ElasticMapReduceModifyInstanceFleetPolicy Dá permissão para listar detalhes e modificar capacidades para, por exemplo, frotas dentro de um cluster.
ElasticMapReduceSetTerminationProtectionPolicy Dá permissão para definir a proteção de terminação para um cluster.
ElasticMapReduceModifyInstanceGroupsPolicy Dá permissão para listar detalhes e modificar configurações para grupos de exemplo dentro de um cluster.
ElasticMapReduceCancelStepsPolicy Dá permissão para cancelar um passo ou passos pendentes num cluster em execução.
ElasticMapReduceTerminateJobFlowsPolicy Dá permissão para encerrar um cluster.
ElasticMapReduceAddJobFlowStepsPolicy Dá permissão para adicionar novos passos a um cluster em execução.
SageMakerCreateEndpointPolicy Dá permissão para criar um ponto final em SageMaker.
SageMakerCreateEndpointConfigPolicy Dá permissão para criar uma configuração de ponto final em SageMaker.
EcsRunTaskPolicy Dá permissão para iniciar uma nova tarefa para uma definição de tarefa.
EFSWriteAccessPolicy Dá permissão para montar um Amazon EFS com acesso de gravação.

Troubleshooting

Erro SAM CLI: "Tem de especificar valores de parâmetros válidos para o modelo de política '<nome-modelo-política>'"

Ao executar sam build, você verá o seguinte erro:

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

Isto significa que não passou um objeto vazio ao declarar um modelo de apólice que não tem quaisquer valores de espaço reservado.

Para corrigir isto, declare a política como o seguinte exemplo para CloudWatchPutMetricPolicy.

MyFunction: Policies: - CloudWatchPutMetricPolicy: {}