AWS SAM templat kebijakan - AWS Serverless Application Model

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS SAM templat kebijakan

AWS Serverless Application Model (AWS SAM) memungkinkan Anda memilih dari daftar templat kebijakan untuk mencakup izin fungsi Lambda AWS Step Functions dan mesin status ke sumber daya yang digunakan oleh aplikasi Anda.

AWS SAM aplikasi dalam AWS Serverless Application Repository yang menggunakan templat kebijakan tidak memerlukan pengakuan pelanggan khusus untuk menyebarkan aplikasi dari. AWS Serverless Application Repository

Jika Anda ingin meminta agar templat kebijakan baru ditambahkan, lakukan hal berikut:

  1. Kirim permintaan tarik terhadap file sumber policy_templates.json di cabang proyek. develop AWS SAM GitHub Anda dapat menemukan file sumber di policy_templates.json di situs web. GitHub

  2. Kirimkan masalah dalam AWS SAM GitHub proyek yang mencakup alasan permintaan tarik Anda dan tautan ke permintaan tersebut. Gunakan tautan ini untuk mengirimkan masalah baru: AWS Serverless Application Model: Permasalahan.

Sintaks

Untuk setiap templat kebijakan yang Anda tentukan dalam file AWS SAM templat, Anda harus selalu menentukan objek yang berisi nilai placeholder templat kebijakan. Jika templat kebijakan tidak memerlukan nilai pengganti, Anda harus menentukan objek yang kosong.

YAML

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

Contoh

Contoh 1: Templat kebijakan dengan nilai pengganti

Contoh berikut menunjukkan bahwa templat kebijakan SQSPollerPolicy mengasumsikan QueueName sebagai sumber daya. AWS SAM Template mengambil nama SQS antrian Amazon "MyQueue", yang dapat Anda buat dalam aplikasi yang sama atau diminta sebagai parameter untuk aplikasi.

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

Contoh 2: Templat kebijakan tanpa nilai pengganti

Contoh berikut berisi templat kebijakan CloudWatchPutMetricPolicy, yang tidak memiliki nilai pengganti.

catatan

Meskipun tidak ada nilai pengganti, Anda harus menentukan objek yang kosong, jika tidak ditentukan akan muncul sebuah kesalahan.

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

Tabel templat kebijakan

Berikut ini adalah tabel templat kebijakan yang tersedia.

Templat kebijakan Deskripsi
AcmGetCertificatePolicy Memberikan izin untuk membaca sertifikat dari AWS Certificate Manager.
AMIDescribePolicy Memberikan izin untuk mendeskripsikan Amazon Machine Images (AMIs).
AthenaQueryPolicy Memberikan izin untuk mengeksekusi kueri Athena.
AWSSecretsManagerGetSecretValuePolicy Memberikan izin agar mendapatkan nilai rahasia untuk rahasia AWS Secrets Manager yang ditentukan.
AWSSecretsManagerRotationPolicy Memberikan izin untuk merotasi rahasia di AWS Secrets Manager.
CloudFormationDescribeStacksPolicy Memberikan izin untuk menggambarkan AWS CloudFormation tumpukan.
CloudWatchDashboardPolicy Memberikan izin untuk menempatkan metrik untuk beroperasi di CloudWatch dasbor.
CloudWatchDescribeAlarmHistoryPolicy Memberikan izin untuk menggambarkan riwayat CloudWatch alarm.
CloudWatchPutMetricPolicy Memberikan izin untuk mengirim metrik ke CloudWatch.
CodeCommitCrudPolicy Memberikan izin ke create/read/update/delete objek dalam CodeCommit repositori tertentu.
CodeCommitReadPolicy Memberikan izin untuk membaca objek dalam CodeCommit repositori tertentu.
CodePipelineLambdaExecutionPolicy Memberikan izin untuk fungsi Lambda yang dipanggil oleh CodePipeline untuk melaporkan status pekerjaan.
CodePipelineReadOnlyPolicy Memberikan izin baca untuk mendapatkan detail tentang CodePipeline pipa.
ComprehendBasicAccessPolicy Memberikan izin untuk mendeteksi entitas, frasa kunci, bahasa, dan sentimen.
CostExplorerReadOnlyPolicy Memberikan izin hanya-baca ke Cost APIs Explorer hanya-baca untuk riwayat penagihan.
DynamoDBBackupFullAccessPolicy Memberikan izin membaca dan menulis pada pencadangan sesuuai permintaan DynamoDB untuk tabel.
DynamoDBCrudPolicy Memberikan izin untuk membuat, membaca, memperbarui, dan menghapus pada tabel Amazon DynamoDB.
DynamoDBReadPolicy Memberikan izin baca-saja pada tabel DynamoDB.
DynamoDBReconfigurePolicy Memberikan izin untuk mengonfigurasi ulang tabel DynamoDB.
DynamoDBRestoreFromBackupPolicy Memberikan izin untuk memulihkan tabel DynamoDB dari cadangan.
DynamoDBStreamReadPolicy Memberikan izin untuk menjelaskan dan membaca aliran dan catatan DynamoDB.
DynamoDBWritePolicy Memberikan izin tulis-saja pada tabel DynamoDB.
EC2CopyImagePolicy Memberikan izin untuk menyalin EC2 gambar Amazon.
EC2DescribePolicy Memberikan izin untuk mendeskripsikan instans Amazon Elastic Compute Cloud (AmazonEC2).
EcsRunTaskPolicy Memberikan izin agar dapat memulai tugas baru untuk definisi tugas.
EFSWriteAccessPolicy Memberikan izin untuk memasang sistem EFS file Amazon dengan akses tulis.
EKSDescribePolicy Memberikan izin untuk mendeskripsikan atau mencantumkan EKS kluster Amazon.
ElasticMapReduceAddJobFlowStepsPolicy Memberikan izin untuk menambahkan langkah-langkah baru agar dapat menjalankan klaster.
ElasticMapReduceCancelStepsPolicy Memberikan izin untuk membatalkan langkah yang tertunda atau langkah-langkah pada klaster yang sedang berjalan.
ElasticMapReduceModifyInstanceFleetPolicy Memberikan izin untuk membuat daftar detail dan mengubah kapasitas untuk armada instans dalam sebuah klaster.
ElasticMapReduceModifyInstanceGroupsPolicy Memberikan izin untuk membuat daftar detail dan mengubah pengaturan pada grup instans dalam klaster.
ElasticMapReduceSetTerminationProtectionPolicy Memberikan izin untuk mengatur perlindungan terminasi pada klaster.
ElasticMapReduceTerminateJobFlowsPolicy Memberikan izin untuk menutup klaster.
ElasticsearchHttpPostPolicy Memberikan POST izin ke OpenSearch Layanan Amazon.
EventBridgePutEventsPolicy Memberikan izin untuk mengirim acara ke EventBridge.
FilterLogEventsPolicy Memberikan izin untuk memfilter peristiwa CloudWatch Log dari grup log tertentu.
FirehoseCrudPolicy Memberikan izin untuk membuat, menulis, memperbarui, dan menghapus aliran pengiriman Firehose.
FirehoseWritePolicy Memberikan izin untuk menulis ke aliran pengiriman Firehose.
KinesisCrudPolicy Memberikan izin untuk membuat, memublikasikan, dan menghapus aliran Amazon Kinesis.
KinesisStreamReadPolicy Memberikan izin untuk membuat daftar dan membaca aliran Amazon Kinesis.
KMSDecryptPolicy Memberikan izin untuk mendekripsi dengan kunci AWS Key Management Service (AWS KMS).
KMSEncryptPolicy Memberikan izin untuk mengenkripsi dengan kunci AWS Key Management Service (AWS KMS).
LambdaInvokePolicy Memberikan izin untuk memanggil AWS Lambda fungsi, alias, atau versi.
MobileAnalyticsWriteOnlyAccessPolicy Memberikan izin tulis-saja agar dapat menempatkan data kejadian untuk semua sumber daya aplikasi.
OrganizationsListAccountsPolicy Memberikan izin hanya-baca untuk mencantumkan nama akun anak dan. IDs
PinpointEndpointAccessPolicy Memberikan izin agar mendapatkan serta memperbarui titik akhir untuk aplikasi Amazon Pinpoint.
PollyFullAccessPolicy Memberikan izin akses penuh ke sumber leksikon Amazon Polly.
RekognitionDetectOnlyPolicy Memberikan izin untuk mendeteksi wajah, label, dan teks.
RekognitionFacesManagementPolicy Memberikan izin untuk menambah, menghapus, dan mencari wajah di koleksi Amazon Rekognition.
RekognitionFacesPolicy Memberikan izin untuk membandingkan dan mendeteksi wajah serta label.
RekognitionLabelsPolicy Memberikan izin untuk mendeteksi objek dan moderasi pada label.
RekognitionNoDataAccessPolicy Memberikan izin untuk membandingkan dan mendeteksi wajah serta label.
RekognitionReadPolicy Memberikan izin untuk membuat daftar dan mencari wajah.
RekognitionWriteOnlyAccessPolicy Memberikan izin untuk membuat koleksi dan indeks wajah.
Route53ChangeResourceRecordSetsPolicy Memberikan izin untuk mengubah set catatan sumber daya di Route 53.
S3CrudPolicy Memberikan izin untuk membuat, membaca, memperbarui, dan menghapus untuk bertindak di objek dalam bucket Amazon S3.
S3FullAccessPolicy Memberikan izin akses penuh agar dapat bertindak pada objek dalam bucket Amazon S3.
S3ReadPolicy Memberikan izin baca-saja untuk membaca objek di bucket Amazon Simple Storage Service (Amazon S3).
S3WritePolicy Memberikan izin menulis untuk menulis objek ke dalam bucket Amazon S3.
SageMakerCreateEndpointConfigPolicy Memberikan izin untuk membuat konfigurasi titik akhir di SageMaker AI.
SageMakerCreateEndpointPolicy Memberikan izin untuk membuat titik akhir di SageMaker AI.
ServerlessRepoReadWriteAccessPolicy Memberikan izin untuk membuat dan mendaftar aplikasi dalam AWS Serverless Application Repository layanan.
SESBulkTemplatedCrudPolicy Memberikan izin untuk mengirimkan email, templat email, templat email massal, dan melakukan verifikasi identitas.
SESBulkTemplatedCrudPolicy_v2 Memberikan izin untuk mengirim SES email Amazon, email template, dan email massal template dan untuk memverifikasi identitas.
SESCrudPolicy Memberikan izin untuk mengirim email dan memverifikasi identitas.
SESEmailTemplateCrudPolicy Memberikan izin untuk membuat, mendapatkan, membuat daftar, memperbarui, dan menghapus template SES email Amazon.
SESSendBouncePolicy Memberikan SendBounce izin ke identitas Amazon Simple Email Service (AmazonSES).
SNSCrudPolicy Memberikan izin untuk membuat, menerbitkan, dan berlangganan SNS topik Amazon.
SNSPublishMessagePolicy Memberikan izin untuk mempublikasikan pesan ke topik Amazon Simple Notification Service (AmazonSNS).
SQSPollerPolicy Memberikan izin untuk melakukan polling antrian Amazon Simple Queue Service (AmazonSQS).
SQSSendMessagePolicy Memberikan izin untuk mengirim pesan ke SQS antrian Amazon.
SSMParameterReadPolicy Memberikan izin untuk mengakses parameter dari penyimpanan parameter Amazon EC2 Systems Manager (SSM) untuk memuat rahasia di akun ini. Gunakan ketika nama parameter tidak memiliki awalan garis miring.
SSMParameterWithSlashPrefixReadPolicy Memberikan izin untuk mengakses parameter dari penyimpanan parameter Amazon EC2 Systems Manager (SSM) untuk memuat rahasia di akun ini. Gunakan ketika nama parameter memiliki awalan garis miring.
StepFunctionsExecutionPolicy Memberikan izin untuk memulai eksekusi pada mesin keadaan Step Functions.
TextractDetectAnalyzePolicy Memberikan akses untuk mendeteksi dan menganalisia dokumen menggunakan Amazon Textract.
TextractGetResultPolicy Memberikan akses untuk mendapatkan dokumen yang terdeteksi dan teranalisis dari Amazon Textract.
TextractPolicy Memberikan akses penuh menuju Amazon Textract.
VPCAccessPolicy Memberikan akses untuk membuat, menghapus, menjelaskan, dan melepaskan antarmuka jaringan elastis.

Pemecahan Masalah

SAMCLIerror: “Harus menentukan nilai parameter yang valid untuk templat kebijakan '< policy-template-name >'”

Saat mengeksekusi sam build, Anda akan melihat kesalahan berikut:

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

Kesalahan tersebut berarti bahwa Anda tidak dapat melewati objek kosong ketika menyatakan templat kebijakan yang tidak memiliki nilai pengganti.

Untuk memperbaikinya, nyatakan kebijakan seperti contoh berikut untuk CloudWatchPutMetricPolicy.

MyFunction: Policies: - CloudWatchPutMetricPolicy: {}