AWS SAMModelos de política - 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 SAMModelos de política

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

AWS SAMaplicativos noAWS Serverless Application Repositoryque usam modelos de política não exigem confirmações especiais do cliente para implantar o aplicativo doAWS Serverless Application Repository.

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

  1. Envie uma solicitação pull no arquivo de origem policy_templates.json nodevelopRamificação doAWS SAM GitHubprojeto do. É possível encontrar o arquivo de origem nopolicy_templates.jsonnoGitHubsite do.

  2. Envie um problema noAWS SAM GitHubProjeto que inclua os motivos da sua solicitação pull e um link para a solicitação. Use este link para enviar um novo problema: AWS Serverless Application Model: Problemas.

Sintaxe

Para cada modelo de política que você especificar em seuAWS SAMarquivo de modelo, você sempre deve especificar um objeto contendo os valores de espaço reservado do modelo de política. Se um modelo de política não exigir nenhum valor de espaço reservado, você deverá 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

Exemplos

Exemplo 1: Modelo de política com valores de espaço reservado

O exemplo a seguir mostra que o modelo de política SQSPollerPolicy espera um QueueName como recurso. OAWS SAMtemplate recupera o nome do”MyQueue“Fila Amazon SQS, que você pode criar no mesmo aplicativo ou solicitado como um parâmetro para ele.

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

Exemplo 2: Modelo de política sem valores sem valores de espaço reservado

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

nota

Mesmo que não haja valores de espaço reservado, você deve especificar um objeto vazio, caso contrário, ocorrerá um erro.

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

Tabela de modelos de política

Veja a seguir uma tabela dos modelos de política disponíveis.

Modelo de política Descrição
SQSPollerPolicy Concede permissão para pesquisar uma fila do Amazon Simple Queue Service (Amazon SQS).
LambdaInvokePolítica Concede permissão para invocar umAWS Lambdafunção, alias ou versão.
CloudWatchDescribeAlarmHistoryPolicy Dá permissão para descreverCloudWatchhistórico de alarmes.
CloudWatchPutMetricPolítica Concede permissão para enviar métricas paraCloudWatch.
EC2DescribePolicy Concede permissão para descrever instâncias do Amazon Elastic Compute Cloud (Amazon EC2).
DynamoDBCrudPolicy Fornece permissões de criação, leitura, atualização e exclusão para uma tabela do Amazon DynamoDB.
DynamoDBReadPolicy Concede permissão somente leitura a uma tabela do DynamoDB.
DynamoDBWritePolicy Concede permissão somente gravação a uma tabela do DynamoDB.
DynamoDBReconfigurePolicy Concede permissão para reconfigurar uma tabela do DynamoDB.
SESSendBouncePolítica DáSendBounceConcede permissão para uma identidade do Amazon Simple Email Service (Amazon SES).
ElasticsearchHttpPostPolicy Dá permissão POST à AmazonOpenSearchServiço.
S3ReadPolicy Concede permissão somente leitura para ler objetos em um bucket do Amazon Simple Storage Service (Amazon S3).
S3WritePolicy Concede permissão de gravação para gravar objetos em um bucket do Amazon S3.
S3CrudPolicy Dá permissão de criação, leitura, atualização e exclusão para agir sobre os objetos em um bucket do Amazon S3.
AMIDescribePolicy Concede permissão para descrever imagens de máquina da Amazon (AMIs).
CloudFormationDescribeStacksPolítica Dá permissão para descreverAWS CloudFormationpilhas.
RekognitionDetectOnlyPolicy Concede permissão para detectar faces, rótulos e texto.
RekognitionNoDataAccessPolítica Concede permissão para comparar e detectar faces e rótulos.
RekognitionReadPolítica Dá permissão para listar e pesquisar rostos.
RekognitionWriteOnlyAccessPolítica Dá permissão para criar faces de coleta e índice.
SQSSendMessagePolítica Concede permissão para enviar mensagem para uma fila do Amazon SQS.
SNSPublishMessagePolítica Concede permissão para publicar uma mensagem em um tópico do Amazon Simple Notification Service (Amazon SNS).
VPCAccessPolicy Dá acesso para criar, excluir, descrever e desanexar interfaces de rede elásticas.
DynamoDBStreamReadPolítica Dá permissão para descrever e ler fluxos e registros do DynamoDB.
KinesisStreamReadPolicy Concede permissão para listar e ler um fluxo do Amazon Kinesis.
SESCrudPolicy Dá permissão para enviar e-mail e verificar a identidade.
SNSCrudPolicy Dá permissão para criar, publicar e assinar tópicos do Amazon SNS.
KinesisCrudPolítica Dá permissão para criar, publicar e excluir um stream do Amazon Kinesis.
KMSDecryptPolicy Dá permissão para descriptografar com umAWS Key Management Service(AWS KMSchave).
KMSEncryptPolicy Dá permissão para criptografar com umAWS Key Management Service(AWS KMSchave).
PollyFullAccessPolicy Dá permissão de acesso total aos recursos do Amazon Polly lexicon.
S3FullAccessPolítica Dá permissão de acesso total para agir sobre os objetos em um bucket do Amazon S3.
CodePipelineLambdaExecutionPolítica Dá permissão para uma função do Lambda invocada porCodePipelinepara relatar o status do trabalho.
ServerlessRepoReadWriteAccessPolicy Concede permissão para criar e listar aplicativos noAWS Serverless Application Repositoryserviço.
EC2CopyImagePolítica Concede permissão para copiar imagens do Amazon EC2.
AWSSecretsManagerRotationPolicy Dá permissão para girar um segredo emAWS Secrets Manager.
AWSSecretsManagerGetSecretValuePolicy Concede permissão para obter o valor secreto do especificadoAWS Secrets Managersegredo do.
CodePipelineReadOnlyPolítica Concede permissão de leitura para obter detalhes sobre umCodePipelinepipeline.
CloudWatchDashboardPolicy Dá permissões para colocar métricas para operarCloudWatchPainéis de controle do.
RekognitionFacesManagementPolicy Dá permissão para adicionar, excluir e pesquisar faces em uma coleção do Amazon Rekognition.
RekognitionFacesPolítica Concede permissão para comparar e detectar faces e rótulos.
RekognitionLabelsPolítica Dá permissão para detectar rótulos de objeto e moderação.
DynamoDBBackupFullAccessPolicy Concede permissão de leitura e gravação aos backups sob demanda do DynamoDB para uma tabela.
DynamoDBRestoreFromBackupPolicy Dá permissão para restaurar uma tabela do DynamoDB a partir do backup.
ComprehendBasicAccessPolicy Concede permissão para detectar entidades, frases-chave, linguagens e sentimentos.
MobileAnalyticsWriteOnlyAccessPolicy Concede permissão somente gravação para colocar dados de eventos para todos os recursos do aplicativo.
PinpointEndpointAccessPolicy Concede permissão para obter e atualizar endpoints para um aplicativo Amazon Pinpoint.
FirehoseWritePolítica Concede permissão para gravar em um fluxo de entrega do Kinesis Data Firehose.
FirehoseCrudPolítica Concede permissão para criar, gravar, atualizar e excluir um fluxo de entrega do Kinesis Data Firehose.
EKSDescribePolicy Dá permissão para descrever ou listar clusters do Amazon EKS.
CostExplorerReadOnlyPolítica Dá permissão somente leitura às APIs do Cost Explorer somente leitura para histórico de faturamento.
OrganizationsListAccountsPolicy Dá permissão somente leitura para listar nomes e IDs de contas filho.
SESBulkTemplatedCrudPolicy Dá permissão para enviar e-mail, e-mail com modelo, e-mails em massa modelados e verificar a identidade.
SESEmailTemplateCrudPolicy Dá permissão para criar, obter, listar, atualizar e excluir modelos de e-mail do Amazon SES.
FilterLogEventsPolicy Dá permissão para filtrarCloudWatchRegistra eventos de um grupo de logs específico.
SSMParameterReadPolítica Dá permissão para acessar parâmetros de um armazenamento de parâmetros do Amazon EC2 Systems Manager (SSM) para carregar segredos nessa conta.
StepFunctionsExecutionPolicy Concede permissão para iniciar uma execução de máquina de estado do Step Functions.
CodeCommitCrudPolicy Dá permissões para criar/ler/atualizar/excluir objetos dentro de um específicoCodeCommitrepositório do.
CodeCommitReadPolicy Dá permissões para ler objetos dentro de um específicoCodeCommitrepositório do.
AthenaQueryPolítica Dá permissões para executar consultas do Athena.
TextractPolicy Fornece acesso total ao Amazon Textract.
TextractDetectAnalyzePolicy Dá acesso para detectar e analisar documentos com o Amazon Textract.
TextractGetResultPolicy Dá acesso para obter documentos detectados e analisados do Amazon Textract.
EventBridgePutEventsPolítica Fornece permissões para enviar eventos paraEventBridge.
ElasticMapReduceModifyInstanceFleetPolítica Dá permissão para listar detalhes e modificar capacidades para frotas de instâncias dentro de um cluster.
ElasticMapReduceSetTerminationProtectionPolítica Concede permissão para definir a proteção contra encerramento para um cluster.
ElasticMapReduceModifyInstanceGroupsPolítica Dá permissão para listar detalhes e modificar configurações para grupos de instâncias em um cluster.
ElasticMapReduceCancelStepsPolicy Concede permissão para cancelar uma etapa pendente ou etapas em um cluster em execução.
ElasticMapReduceTerminateJobFlowsPolítica Concede permissão para desligar um cluster.
ElasticMapReduceAddJobFlowStepsPolicy Concede permissão para adicionar novas etapas a um cluster em execução.
SageMakerCreateEndpointPolítica Concede permissão para criar um endpoint noSageMaker.
SageMakerCreateEndpointConfigPolicy Dá permissão para criar uma configuração de endpoint noSageMaker.
EcsRunTaskPolicy Concede permissão para iniciar uma nova tarefa para uma definição de tarefa.
EFSWriteAccessPolítica Dá permissão para montar um sistema de arquivos do Amazon EFS com acesso de gravação.
Route53ChangeResourceRecordSetsPolítica Concede permissão para alterar conjuntos de registros de recursos no Route 53.
AcmGetCertificatePolicy Dá permissão para ler um certificado deAWS Certificate Manager.

Solução de problemas

Erro da CLI do SAM: “É necessário especificar valores de parâmetros válidos para o modelo de política '<policy-template-name>'”

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

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

Isso significa que você não passou um objeto vazio ao declarar um modelo de política que não tem nenhum valor de espaço reservado.

Para corrigir isso, declare a política como o exemplo a seguir paraCloudWatchPutMetricPolítica.

MyFunction: Policies: - CloudWatchPutMetricPolicy: {}