Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Modèles de politique AWS SAM
Le AWS Serverless Application Model (AWS SAM) vous permet de choisir parmi une liste de modèles de politiques pour étendre les autorisations de vos fonctions Lambda et de vos machines d' AWS Step Functions état aux ressources utilisées par votre application.
AWS SAM les applications du AWS Serverless Application Repository qui utilisent des modèles de politique ne nécessitent aucun accusé de réception spécial du client pour déployer l'application depuis le. AWS Serverless Application Repository
Si vous souhaitez demander un nouveau modèle de stratégie à ajouter, procédez comme suit :
-
Soumettez une pull request sur le fichier source policy_templates.json dans la branche du
develop
projet. AWS SAM GitHub Vous pouvez trouver le fichier source dans policy_templates.jsonsur le site Web. GitHub -
Soumettez un problème dans le AWS SAM GitHub projet qui inclut les raisons de votre pull request et un lien vers la demande. Utilisez ce lien pour soumettre un nouveau problème : AWS Serverless Application Model : Problèmes
.
Syntaxe
Pour chaque modèle de stratégie que vous spécifiez dans votre fichier de AWS SAM modèle, vous devez toujours spécifier un objet contenant les valeurs d'espace réservé du modèle de stratégie. Si un modèle de stratégie ne nécessite aucune valeur d'espace réservé, vous devez spécifier un objet vide.
YAML
MyFunction: Type: AWS::Serverless::Function Properties: Policies: - PolicyTemplateName1: # Policy template with placeholder value Key1: Value1 - PolicyTemplateName2: {} # Policy template with no placeholder value
Exemples
Exemple 1 : Modèle de stratégie avec des valeurs d'espace réservé
L'exemple suivant montre que le modèle de stratégie SQSPollerPolicy attend un QueueName
comme ressource. Le AWS SAM modèle récupère le nom de la file « MyQueue
» Amazon SQS, que vous pouvez créer dans la même application ou demander en tant que paramètre de l'application.
MyFunction: Type: 'AWS::Serverless::Function' Properties: CodeUri: ${codeuri} Handler: hello.handler Runtime: python2.7 Policies: - SQSPollerPolicy: QueueName: !GetAtt MyQueue.QueueName
Exemple 2 : modèle de stratégie sans valeurs d'espace réservé
L'exemple suivant contient le modèle de stratégieCloudWatchPutMetricPolicy, qui n'a pas de valeurs d'espace réservé.
Note
Même s'il n'y a pas de valeurs d'espace réservé, vous devez spécifier un objet vide, sinon une erreur se produira.
MyFunction: Type: 'AWS::Serverless::Function' Properties: CodeUri: ${codeuri} Handler: hello.handler Runtime: python2.7 Policies: - CloudWatchPutMetricPolicy: {}
Tableau de modèle de stratégie
Voici un tableau des modèles de stratégie disponibles.
Modèle de stratégie | Description |
---|---|
AcmGetCertificatePolicy | Donne l'autorisation de lire un certificat à partir de AWS Certificate Manager. |
AMIDescribePolicy | Donne l'autorisation de décrire les Amazon Machine Images (AMI) |
AthenaQueryPolicy | Donne des autorisations pour exécuter des requêtes Athena. |
AWSSecretsManagerGetSecretValuePolicy | Donne l'autorisation d'obtenir la valeur secrète pour le secret AWS Secrets Manager spécifié. |
AWSSecretsManagerRotationPolicy | Donne l'autorisation de faire pivoter un secret dans AWS Secrets Manager. |
CloudFormationDescribeStacksPolicy | Donne l'autorisation de décrire les AWS CloudFormation piles. |
CloudWatchDashboardPolicy | Permet de placer des métriques à appliquer sur les CloudWatch tableaux de bord. |
CloudWatchDescribeAlarmHistoryPolicy | Permet de décrire l'historique des CloudWatch alarmes. |
CloudWatchPutMetricPolicy | Donne l'autorisation d'envoyer des métriques à CloudWatch. |
CodeCommitCrudPolicy | Permet de créer/lire/mettre à jour/supprimer des objets dans un référentiel spécifique. CodeCommit |
CodeCommitReadPolicy | Permet de lire des objets dans un CodeCommit référentiel spécifique. |
CodePipelineLambdaExecutionPolicy | Permet à une fonction Lambda invoquée par CodePipeline de signaler l'état de la tâche. |
CodePipelineReadOnlyPolicy | Donne l'autorisation de lecture pour obtenir des informations sur un CodePipeline pipeline. |
ComprehendBasicAccessPolicy | Donne l'autorisation de détecter des entités, des expressions clés, des langues et des sentiments. |
CostExplorerReadOnlyPolicy | Donne l'autorisation de lecture seule pour les API de Cost Explorer en lecture seule pour l'historique de facturation. |
DynamoDBBackupFullAccessPolicy | Donne l'autorisation de lecture/écriture aux sauvegardes DynamoDB à la demande pour une table. |
DynamoDBCrudPolicy | Donne les autorisations de créer, lire, mettre à jour, supprimer à une table Amazon DynamoDB. |
DynamoDBReadPolicy | Donne l'autorisation de lecture seule à une table DynamoDB. |
DynamoDBReconfigurePolicy | Donne l'autorisation de reconfigurer une table DynamoDB. |
DynamoDBRestoreFromBackupPolicy | Donne l'autorisation de restaurer une table DynamoDB à partir d'une sauvegarde. |
DynamoDBStreamReadPolicy | Donne l'autorisation de décrire et de lire les flux DynamoDB Streams ainsi que les enregistrements. |
DynamoDBWritePolicy | Donne l'autorisation d'écriture seule à une table DynamoDB. |
EC2CopyImagePolicy | Donne l'autorisation de copier les images Amazon EC2. |
EC2DescribePolicy | Donne l'autorisation de décrire des instances Amazon Elastic Compute Cloud (Amazon EC2). |
EcsRunTaskPolicy | Donne l'autorisation de démarrer une nouvelle tâche pour une définition de tâche. |
EFSWriteAccessPolicy | Donne l'autorisation de monter un système de fichiers Amazon EFS avec accès en écriture. |
EKSDescribePolicy | Donne l'autorisation de décrire ou de répertorier les clusters Amazon EKS. |
ElasticMapReduceAddJobFlowStepsPolicy | Donne l'autorisation d'ajouter de nouvelles étapes à un cluster en cours d'exécution. |
ElasticMapReduceCancelStepsPolicy | Donne l'autorisation d'annuler une étape ou des étapes en attente dans un cluster en cours d'exécution. |
ElasticMapReduceModifyInstanceFleetPolicy | Donne l'autorisation de répertorier les détails et de modifier les capacités des flottes d'instances au sein d'un cluster. |
ElasticMapReduceModifyInstanceGroupsPolicy | Donne l'autorisation de répertorier les détails et de modifier les réglages des groupes d'instances au sein d'un cluster. |
ElasticMapReduceSetTerminationProtectionPolicy | Donne l'autorisation de définir une protection contre l'arrêt pour un cluster. |
ElasticMapReduceTerminateJobFlowsPolicy | Donne l'autorisation d'arrêter un cluster. |
ElasticsearchHttpPostPolicy | Donne l'autorisation POST à Amazon OpenSearch Service. |
EventBridgePutEventsPolicy | Donne l'autorisation d'envoyer des événements à EventBridge. |
FilterLogEventsPolicy | Permet de filtrer les événements CloudWatch des journaux à partir d'un groupe de journaux spécifié. |
FirehoseCrudPolicy | Donne l'autorisation de créer, d'écrire, de mettre à jour et de supprimer un flux de diffusion Firehose. |
FirehoseWritePolicy | Donne l'autorisation d'écrire dans un flux de diffusion Firehose. |
KinesisCrudPolicy | Donne l'autorisation de créer, publier et supprimer un flux Amazon Kinesis. |
KinesisStreamReadPolicy | Donne l'autorisation d'afficher et de lire un flux Amazon Kinesis. |
KMSDecryptPolicy | Donne l'autorisation de déchiffrer avec une clé AWS Key Management Service (AWS KMS). |
KMSEncryptPolicy | Donne l'autorisation de chiffrer avec une clé AWS Key Management Service (AWS KMS). |
LambdaInvokePolicy | Permet d'invoquer une AWS Lambda fonction, un alias ou une version. |
MobileAnalyticsWriteOnlyAccessPolicy | Donne uniquement l'autorisation d'écriture pour placer les données d'événements pour toutes les ressources d'application. |
OrganizationsListAccountsPolicy | Donne l'autorisation en lecture seule de répertorier les noms et les ID de compte enfant. |
PinpointEndpointAccessPolicy | Donne l'autorisation d'obtenir et de mettre à jour les points de terminaison pour une application Amazon Pinpoint. |
PollyFullAccessPolicy | Donne l'autorisation d'accès complet aux ressources de lexique Amazon Polly. |
RekognitionDetectOnlyPolicy | Donne l'autorisation de comparer et de détecter les visages et les étiquettes. |
RekognitionFacesManagementPolicy | Donne l'autorisation d'ajouter, de supprimer et de rechercher des visages dans une collection Amazon Rekognition. |
RekognitionFacesPolicy | Donne l'autorisation de comparer et de détecter les visages et les étiquettes. |
RekognitionLabelsPolicy | Donne l'autorisation de détecter les étiquettes d'objet et de modération. |
RekognitionNoDataAccessPolicy | Donne l'autorisation de comparer et de détecter les visages et les étiquettes. |
RekognitionReadPolicy | Donne l'autorisation de lister et de rechercher des visages. |
RekognitionWriteOnlyAccessPolicy | Donne l'autorisation de créer des collections et d'indexer des visages. |
Route53ChangeResourceRecordSetsPolicy | Donne l'autorisation de modifier des jeux d'enregistrements de ressources dans Route 53. |
S3CrudPolicy | Donne l'autorisation de créer, lire, mettre à jour et supprimer pour agir sur les objets d'un compartiment Amazon S3. |
S3FullAccessPolicy | Donne l'autorisation d'accès complet pour agir sur les objets d'un compartiment Amazon S3. |
S3ReadPolicy | Donne l'autorisation de lire des objets en lecture seule dans un compartiment Amazon Simple Storage Service (Amazon S3). |
S3WritePolicy | Donne l'autorisation d'écrire des objets dans un compartiment Amazon S3. |
SageMakerCreateEndpointConfigPolicy | Donne l'autorisation de créer une configuration de point de terminaison dans SageMaker. |
SageMakerCreateEndpointPolicy | Donne l'autorisation de créer un point de terminaison dans SageMaker. |
ServerlessRepoReadWriteAccessPolicy | Permet de créer et de répertorier des applications dans le AWS Serverless Application Repository service. |
SESBulkTemplatedCrudPolicy | Donne l'autorisation d'envoyer des e-mails, des e-mails modélisés, des e-mails groupés et de vérifier l'identité. |
SESBulkTemplatedCrudPolicy_v2 | Donne l'autorisation d'envoyer des e-mails Amazon SES, des e-mails modélisés, des e-mails groupés et de vérifier l'identité. |
SESCrudPolicy | Donne l'autorisation d'envoyer un e-mail et de vérifier l'identité. |
SESEmailTemplateCrudPolicy | Donne l'autorisation de créer, obtenir, répertorier, mettre à jour et supprimer les modèles d'e-mail Amazon SES. |
SESSendBouncePolicy | Donne SendBounce l'autorisation d'utiliser une identité Amazon Simple Email Service (Amazon SES). |
SNSCrudPolicy | Donne l'autorisation de créer et de publier des rubriques Amazon SNS, et de s'y abonner. |
SNSPublishMessagePolicy | Donne l'autorisation de publier un message dans une rubrique Amazon Simple Notification Service (Amazon SNS). |
SQSPollerPolicy | Donne l'autorisation d'interroger une file d'attente Amazon Simple Queue Service (Amazon SQS). |
SQSSendMessagePolicy | Donne l'autorisation d'envoyer un message à une file d'attente Amazon SQS. |
SSMParameterReadPolicy | Donne l'autorisation d'accéder à un paramètre à partir d'un magasin de paramètres Amazon EC2 Systems Manager (SSM) pour charger des secrets dans ce compte. À utiliser lorsque le nom du paramètre n'est pas précédé d'une barre oblique. |
SSMParameterWithSlashPrefixReadPolicy | Donne l'autorisation d'accéder à un paramètre à partir d'un magasin de paramètres Amazon EC2 Systems Manager (SSM) pour charger des secrets dans ce compte. À utiliser lorsque le nom du paramètre est précédé d'une barre oblique. |
StepFunctionsExecutionPolicy | Donne l'autorisation de lancer l'exécution d'une machine d'état Step Functions. |
TextractDetectAnalyzePolicy | Donne l'accès permettant de détecter et d'analyser des documents avec Amazon Textract. |
TextractGetResultPolicy | Donne l'accès permettant d'obtenir des documents détectés et analysés avec Amazon Textract. |
TextractPolicy | Donne l'accès complet à Amazon Textract. |
VPCAccessPolicy | Donne l'accès pour créer, supprimer, décrire et détacher des interfaces réseau élastiques. |
Résolution des problèmes
Erreur SAM CLI : « Vous devez spécifier des valeurs de paramètres valides pour le modèle de politique '< policy-template-name >' »
Lors de l'exécution de sam build
, l'erreur suivante s'affiche :
"Must specify valid parameter values for policy template '<policy-template-name>'"
Cela signifie que vous n'avez pas transmis d'objet vide lors de la déclaration d'un modèle de stratégie qui ne contient aucune valeur d'espace réservé.
Pour résoudre ce problème, déclarez la stratégie comme l'exemple suivant pour CloudWatchPutMetricPolicy.
MyFunction: Policies: - CloudWatchPutMetricPolicy: {}