AWS SAM modelli di policy - AWS Serverless Application Model

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS SAM modelli di policy

Il AWS Serverless Application Model (AWS SAM) consente di scegliere da un elenco di modelli di policy per definire l'ambito delle autorizzazioni delle funzioni Lambda AWS Step Functions e delle macchine a stati per le risorse utilizzate dall'applicazione.

AWS SAM le applicazioni AWS Serverless Application Repository che utilizzano modelli di policy non richiedono alcun riconoscimento speciale da parte dei clienti per distribuire l'applicazione da. AWS Serverless Application Repository

Se desideri richiedere l'aggiunta di un nuovo modello di policy, procedi come segue:

  1. Invia una pull request per il file sorgente policy_templates.json nel ramo del progetto. develop AWS SAM GitHub Puoi trovare il file sorgente in policy_templates.json sul sito web. GitHub

  2. Invia un problema nel AWS SAM GitHub progetto che includa i motivi della pull request e un link alla richiesta. Usa questo link per inviare un nuovo numero: AWS Serverless Application Model: Problemi.

Sintassi

Per ogni modello di policy specificato nel file di AWS SAM modello, è necessario specificare sempre un oggetto contenente i valori segnaposto del modello di policy. Se un modello di policy non richiede alcun valore segnaposto, è necessario specificare un oggetto vuoto.

YAML

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

Esempi

Esempio 1: modello di policy con valori placeholder

L'esempio seguente mostra che il modello di policy SQSPollerPolicy si aspetta QueueName come risorsa. Il AWS SAM modello recupera il nome della coda MyQueue "" Amazon SQS, che puoi creare nella stessa applicazione o richiesta come parametro all'applicazione.

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

Esempio 2: modello di policy senza valori placeholder

L'esempio seguente contiene il modello di policy CloudWatchPutMetricPolicy senza valori placeholder.

Nota

Anche se non sono presenti valori segnaposto, è necessario specificare un oggetto vuoto, altrimenti si verificherà un errore.

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

Tabella dei modelli di policy

Di seguito è riportata una tabella dei modelli di policy disponibili.

Modello di policy Descrizione
AcmGetCertificatePolicy Fornisce il permesso di leggere un certificato da AWS Certificate Manager.
AMIDescribePolicy Autorizza a descrivere Amazon Machine Images (AMI).
AthenaQueryPolicy Fornisce le autorizzazioni per eseguire le query Athena.
AWSSecretsManagerGetSecretValuePolicy Autorizza a ottenere il valore segreto per il segreto specificato. AWS Secrets Manager
AWSSecretsManagerRotationPolicy Dà il permesso di far ruotare un segreto. AWS Secrets Manager
CloudFormationDescribeStacksPolicy Dà il permesso di descrivere le AWS CloudFormation pile.
CloudWatchDashboardPolicy Fornisce le autorizzazioni per inserire le metriche in modo che funzionino nei dashboard. CloudWatch
CloudWatchDescribeAlarmHistoryPolicy Autorizza a descrivere CloudWatch la cronologia degli allarmi.
CloudWatchPutMetricPolicy Autorizza a inviare metriche a. CloudWatch
CodeCommitCrudPolicy Fornisce le autorizzazioni per creare/leggere/aggiornare/eliminare oggetti all'interno di un repository specifico. CodeCommit
CodeCommitReadPolicy Fornisce le autorizzazioni per leggere oggetti all'interno di un repository specifico. CodeCommit
CodePipelineLambdaExecutionPolicy Fornisce l'autorizzazione a una funzione Lambda richiamata da CodePipeline per segnalare lo stato del lavoro.
CodePipelineReadOnlyPolicy Fornisce il permesso di lettura per ottenere dettagli su una CodePipeline pipeline.
ComprehendBasicAccessPolicy Autorizza il rilevamento di entità, frasi chiave, lingue e sentimenti.
CostExplorerReadOnlyPolicy Fornisce l'autorizzazione di sola lettura alle API Cost Explorer di sola lettura per la cronologia di fatturazione.
DynamoDBBackupFullAccessPolicy Fornisce l'autorizzazione di lettura e scrittura ai backup su richiesta di DynamoDB per una tabella.
DynamoDBCrudPolicy Fornisce autorizzazioni di creazione, lettura, aggiornamento ed eliminazione per una tabella Amazon DynamoDB.
DynamoDBReadPolicy Fornisce l'autorizzazione di sola lettura a una tabella DynamoDB.
DynamoDBReconfigurePolicy Fornisce il permesso di riconfigurare una tabella DynamoDB.
DynamoDBRestoreFromBackupPolicy Autorizza il ripristino di una tabella DynamoDB dal backup.
DynamoDBStreamReadPolicy Fornisce il permesso di descrivere e leggere i flussi e i record di DynamoDB.
DynamoDBWritePolicy Fornisce l'autorizzazione di sola scrittura a una tabella DynamoDB.
EC2CopyImagePolicy Autorizza a copiare le immagini di Amazon EC2.
EC2DescribePolicy Autorizza a descrivere le istanze Amazon Elastic Compute Cloud (Amazon EC2).
EcsRunTaskPolicy Fornisce il permesso di iniziare una nuova attività per la definizione di un'attività.
EFSWriteAccessPolicy Autorizza il montaggio di un file system Amazon EFS con accesso in scrittura.
EKSDescribePolicy Autorizza a descrivere o elencare i cluster Amazon EKS.
ElasticMapReduceAddJobFlowStepsPolicy Autorizza ad aggiungere nuovi passaggi a un cluster in esecuzione.
ElasticMapReduceCancelStepsPolicy Autorizza ad annullare uno o più passaggi in sospeso in un cluster in esecuzione.
ElasticMapReduceModifyInstanceFleetPolicy Autorizza a elencare i dettagli e modificare le capacità, ad esempio le flotte all'interno di un cluster.
ElasticMapReduceModifyInstanceGroupsPolicy Autorizza a elencare i dettagli e modificare le impostazioni per i gruppi di istanze all'interno di un cluster.
ElasticMapReduceSetTerminationProtectionPolicy Autorizza a impostare la protezione dalla terminazione per un cluster.
ElasticMapReduceTerminateJobFlowsPolicy Autorizza la chiusura di un cluster.
ElasticsearchHttpPostPolicy Fornisce l'autorizzazione POST ad Amazon OpenSearch Service.
EventBridgePutEventsPolicy Fornisce le autorizzazioni a cui inviare eventi. EventBridge
FilterLogEventsPolicy Autorizza a filtrare gli eventi di CloudWatch log da un gruppo di log specificato.
FirehoseCrudPolicy Autorizza a creare, scrivere, aggiornare ed eliminare un flusso di distribuzione Firehose.
FirehoseWritePolicy Autorizza la scrittura su un flusso di distribuzione Firehose.
KinesisCrudPolicy Autorizza a creare, pubblicare ed eliminare uno stream Amazon Kinesis.
KinesisStreamReadPolicy Autorizza a elencare e leggere uno stream Amazon Kinesis.
KMSDecryptPolicy Autorizza la decrittografia con una chiave AWS Key Management Service ()AWS KMS.
KMSEncryptPolicy Dà il permesso di cifrare con una chiave AWS Key Management Service ()AWS KMS.
LambdaInvokePolicy Fornisce il permesso di richiamare una AWS Lambda funzione, un alias o una versione.
MobileAnalyticsWriteOnlyAccessPolicy Fornisce l'autorizzazione di sola scrittura per inserire i dati degli eventi per tutte le risorse dell'applicazione.
OrganizationsListAccountsPolicy Fornisce l'autorizzazione di sola lettura per elencare i nomi e gli ID degli account secondari.
PinpointEndpointAccessPolicy Autorizza a ottenere e aggiornare gli endpoint per un'applicazione Amazon Pinpoint.
PollyFullAccessPolicy Fornisce l'autorizzazione di accesso completo alle risorse lessicali di Amazon Polly.
RekognitionDetectOnlyPolicy Autorizza il rilevamento di volti, etichette e testo.
RekognitionFacesManagementPolicy Autorizza ad aggiungere, eliminare e cercare volti in una raccolta Amazon Rekognition.
RekognitionFacesPolicy Autorizza a confrontare e rilevare volti ed etichette.
RekognitionLabelsPolicy Autorizza il rilevamento degli oggetti e delle etichette di moderazione.
RekognitionNoDataAccessPolicy Autorizza a confrontare e rilevare volti ed etichette.
RekognitionReadPolicy Autorizza a elencare e cercare volti.
RekognitionWriteOnlyAccessPolicy Autorizza a creare volti da collezione e da indicizzare.
Route53ChangeResourceRecordSetsPolicy Autorizza a modificare i set di record di risorse in Route 53.
S3CrudPolicy Fornisce l'autorizzazione di creazione, lettura, aggiornamento ed eliminazione per agire sugli oggetti in un bucket Amazon S3.
S3FullAccessPolicy Fornisce l'autorizzazione di accesso completa per agire sugli oggetti in un bucket Amazon S3.
S3ReadPolicy Fornisce l'autorizzazione di sola lettura per leggere oggetti in un bucket Amazon Simple Storage Service (Amazon S3).
S3WritePolicy Fornisce il permesso di scrittura per scrivere oggetti in un bucket Amazon S3.
SageMakerCreateEndpointConfigPolicy Fornisce il permesso di creare una configurazione di endpoint in. SageMaker
SageMakerCreateEndpointPolicy Autorizza a creare un endpoint in. SageMaker
ServerlessRepoReadWriteAccessPolicy Autorizza a creare ed elencare applicazioni nel AWS Serverless Application Repository servizio.
SESBulkTemplatedCrudPolicy Autorizza l'invio di e-mail, e-mail basate su modelli, e-mail collettive basate su modelli e verifica l'identità.
SESBulkTemplatedCrudPolicy_v2 Autorizza a inviare e-mail Amazon SES, e-mail basate su modelli e e-mail collettive basate su modelli e a verificare l'identità.
SESCrudPolicy Autorizza l'invio di e-mail e la verifica dell'identità.
SESEmailTemplateCrudPolicy Autorizza a creare, ottenere, elencare, aggiornare ed eliminare modelli di e-mail Amazon SES.
SESSendBouncePolicy Fornisce SendBounce l'autorizzazione a un'identità Amazon Simple Email Service (Amazon SES).
SNSCrudPolicy Autorizza a creare, pubblicare e sottoscrivere argomenti di Amazon SNS.
SNSPublishMessagePolicy Autorizza a pubblicare un messaggio su un argomento di Amazon Simple Notification Service (Amazon SNS).
SQSPollerPolicy Autorizza il polling di una coda Amazon Simple Queue Service (Amazon SQS).
SQSSendMessagePolicy Autorizza l'invio di messaggi a una coda Amazon SQS.
SSMParameterReadPolicy Fornisce l'autorizzazione ad accedere a un parametro da un archivio di parametri Amazon EC2 Systems Manager (SSM) per caricare i segreti in questo account. Da utilizzare quando il nome del parametro non ha il prefisso slash.
SSMParameterWithSlashPrefixReadPolicy Fornisce l'autorizzazione ad accedere a un parametro da un archivio di parametri Amazon EC2 Systems Manager (SSM) per caricare i segreti in questo account. Da utilizzare quando il nome del parametro ha un prefisso slash.
StepFunctionsExecutionPolicy Fornisce il permesso di avviare l'esecuzione di una macchina a stati Step Functions.
TextractDetectAnalyzePolicy Fornisce l'accesso per rilevare e analizzare documenti con Amazon Textract.
TextractGetResultPolicy Fornisce l'accesso per ottenere documenti rilevati e analizzati da Amazon Textract.
TextractPolicy Fornisce accesso completo ad Amazon Textract.
VPCAccessPolicy Fornisce l'accesso per creare, eliminare, descrivere e scollegare interfacce di rete elastiche.

Risoluzione dei problemi

Errore CLI SAM: «È necessario specificare valori di parametro validi per il modello di policy policy-template-name '< >'»

Durante l'esecuzione di sam build, viene visualizzato il seguente errore:

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

Ciò significa che non è stato passato un oggetto vuoto durante la dichiarazione di un modello di policy privo di valori segnaposto.

Per risolvere questo problema, dichiarate la politica come nell'esempio seguente per. CloudWatchPutMetricPolicy

MyFunction: Policies: - CloudWatchPutMetricPolicy: {}