Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengelola izin sumber daya dengan konektor AWS SAM
Konektor adalah tipe sumber daya abstrak AWS Serverless Application Model (AWS SAM), diidentifikasi sebagaiAWS::Serverless::Connector
, yang menyediakan izin sederhana dan tercakup dengan baik antara sumber daya aplikasi tanpa server Anda.
Manfaat AWS SAM konektor
Dengan secara otomatis menyusun kebijakan akses yang sesuai antar sumber daya, konektor memberi Anda kemampuan untuk membuat aplikasi tanpa server Anda dan fokus pada arsitektur aplikasi Anda tanpa memerlukan keahlian dalam kemampuan AWS otorisasi, bahasa kebijakan, dan pengaturan keamanan khusus layanan. Oleh karena itu, konektor adalah manfaat besar bagi pengembang yang mungkin baru dalam pengembangan tanpa server, atau pengembang berpengalaman yang ingin meningkatkan kecepatan pengembangan mereka.
Menggunakan AWS SAM konektor
Gunakan atribut Connectors
sumber daya dengan menyematkannya dalam sumber daya sumber. Kemudian, tentukan sumber daya tujuan Anda dan jelaskan bagaimana data atau peristiwa harus mengalir di antara sumber daya tersebut. AWS SAM kemudian menyusun kebijakan akses yang diperlukan untuk memfasilitasi interaksi yang diperlukan.
Berikut ini menguraikan bagaimana atribut resource ini ditulis:
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources:
<source-resource-logical-id>
: Type:<resource-type>
... Connectors:<connector-name>
: Properties: Destination:<properties-that-identify-destination-resource>
Permissions:<permission-types-to-provision>
...
Cara kerja konektor
catatan
Bagian ini menjelaskan bagaimana konektor menyediakan sumber daya yang diperlukan di balik layar. Ini terjadi untuk Anda secara otomatis saat menggunakan konektor.
Pertama, atribut Connectors
sumber daya tertanam diubah menjadi tipe AWS::Serverless::Connector
sumber daya. ID logisnya secara otomatis dibuat sebagai <source-resource-logical-id><embedded-connector-logical-id>
.
Misalnya, berikut adalah konektor tertanam:
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 ... Resources: MyFunction: Type: AWS::Lambda::Function Connectors: MyConn: Properties: Destination: Id: MyTable Permissions: - Read - Write MyTable: Type: AWS::DynamoDB::Table
Ini akan menghasilkan AWS::Serverless::Connector
sumber daya berikut:
Transform: AWS::Serverless-2016-10-31 Resources: ... MyFunctionMyConn: Type: AWS::Serverless::Connector Properties: Source: Id: MyFunction Destination: Id: MyTable Permissions: - Read - Write
catatan
Anda juga dapat menentukan konektor dalam AWS SAM template Anda dengan menggunakan sintaks ini. Ini disarankan ketika sumber daya Anda ditentukan pada templat terpisah dari konektor Anda.
Selanjutnya, kebijakan akses yang diperlukan untuk koneksi ini disusun secara otomatis. Untuk informasi selengkapnya tentang sumber daya yang dihasilkan oleh konektor, lihatAWS CloudFormationsumber daya yang dihasilkan saat Anda menentukan AWS::Serverless::Connector.
Contoh konektor
Contoh berikut menunjukkan bagaimana Anda dapat menggunakan konektor untuk menulis data dari AWS Lambda fungsi ke tabel Amazon DynamoDB.
Transform: AWS::Serverless-2016-10-31 Resources: MyTable: Type: AWS::Serverless::SimpleTable MyFunction: Type: AWS::Serverless::Function Connectors: MyConn: Properties: Destination: Id: MyTable Permissions: - Write Properties: Runtime: nodejs16.x Handler: index.handler InlineCode: | const AWS = require("aws-sdk"); const docClient = new AWS.DynamoDB.DocumentClient(); exports.handler = async (event, context) => { await docClient.put({ TableName: process.env.TABLE_NAME, Item: { id: context.awsRequestId, event: JSON.stringify(event) } }).promise(); } Environment: Variables: TABLE_NAME: !Ref MyTable
Atribut Connectors
resource disematkan dalam sumber daya fungsi Lambda. Tabel DynamoDB didefinisikan sebagai sumber daya tujuan menggunakan properti. Id
Konektor akan memberikan Write
izin antara dua sumber daya ini.
Saat Anda menerapkan AWS SAM template Anda AWS CloudFormation, secara otomatis AWS SAM akan menyusun kebijakan akses yang diperlukan yang diperlukan agar koneksi ini berfungsi.
Koneksi yang didukung antara sumber dan sumber daya tujuan
Dukungan konektor Read
dan jenis izin Write
data dan acara antara kombinasi pilihan koneksi sumber dan sumber daya tujuan. Misalnya, konektor mendukung Write
koneksi antara AWS::ApiGateway::RestApi
sumber daya sumber dan sumber daya AWS::Lambda::Function
tujuan.
Sumber dan sumber daya tujuan dapat didefinisikan dengan menggunakan kombinasi properti yang didukung. Persyaratan properti akan tergantung pada koneksi yang Anda buat dan di mana sumber daya ditentukan.
catatan
Konektor dapat menyediakan izin antara jenis sumber daya tanpa server dan non-server yang didukung.
Untuk daftar koneksi sumber daya yang didukung dan persyaratan propertinya, lihatJenis sumber daya dan tujuan yang didukung untuk konektor.
Pelajari selengkapnya
Untuk informasi selengkapnya tentang penggunaan AWS SAM konektor, lihat topik berikut:
Berikan umpan balik
Untuk memberikan umpan balik tentang konektor, kirimkan masalah baru