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:
-
Kirim permintaan tarik terhadap file sumber policy_templates.json di cabang proyek.
develop
AWS SAM GitHub Anda dapat menemukan file sumber di policy_templates.jsondi situs web. GitHub -
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 antrian Amazon SQS 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 menjelaskan Amazon Machine Images (AMI). |
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 untuk membuat/membaca/memperbarui/menghapus objek dalam repositori tertentu. CodeCommit |
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 baca-saja pada baca-saja Cost Explorer API 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 citra Amazon EC2. |
EC2DescribePolicy | Memberikan izin untuk menjelaskan instans Amazon Elastic Compute Cloud (Amazon EC2). |
EcsRunTaskPolicy | Memberikan izin agar dapat memulai tugas baru untuk definisi tugas. |
EFSWriteAccessPolicy | Memberikan izin untuk memasang sistem file Amazon EFS dengan akses tulis. |
EKSDescribePolicy | Memberikan izin untuk menjelaskan atau membuat daftar klaster Amazon EKS. |
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 izin POST ke Amazon OpenSearch Service. |
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 baca-saja pada daftar nama akun anak dan ID. |
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. |
SageMakerCreateEndpointPolicy | Memberikan izin untuk membuat titik akhir di SageMaker. |
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 email Amazon SES, email yang ditemplat, dan templat email massal serta agar menjalankan verifikasi identitas. |
SESCrudPolicy | Memberikan izin untuk mengirim email dan memverifikasi identitas. |
SESEmailTemplateCrudPolicy | Memberikan izin untuk membuat, mendapatkan, membuat daftar, memperbarui dan menghapus templat email Amazon SES. |
SESSendBouncePolicy | Memberikan SendBounce izin ke identitas Amazon Simple Email Service (Amazon SES). |
SNSCrudPolicy | Memberikan izin untuk membuat, memublikasikan, dan berlangganan pada topik Amazon SNS. |
SNSPublishMessagePolicy | Memberikan izin untuk memublikasikan pesan ke topik Amazon Simple Notification Service (Amazon SNS). |
SQSPollerPolicy | Memberikan izin untuk polling antrean Amazon Simple Queue Service (Amazon SQS). |
SQSSendMessagePolicy | Memberikan izin untuk mengirim pesan ke antrean Amazon SQS. |
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
Kesalahan SAM CLI: “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: {}