Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tindakan, sumber daya, dan kunci kondisi untuk AWS AppSync
AWS AppSync (awalan layanan:appsync
) menyediakan kunci konteks sumber daya, tindakan, dan kondisi khusus layanan berikut untuk digunakan dalam kebijakan izin IAM.
Referensi:
-
Pelajari cara mengonfigurasi layanan ini.
-
Lihat daftar Operasi API yang tersedia untuk layanan ini.
-
Pelajari cara mengamankan layanan ini dan sumber dayanya dengan menggunakan kebijakan izin IAM.
Topik
Tindakan yang didefinisikan oleh AWS AppSync
Anda dapat menyebutkan tindakan berikut dalam elemen Action
pernyataan kebijakan IAM. Gunakan kebijakan untuk memberikan izin untuk melaksanakan operasi dalam AWS. Saat Anda menggunakan sebuah tindakan dalam sebuah kebijakan, Anda biasanya mengizinkan atau menolak akses ke operasi API atau perintah CLI dengan nama yang sama. Namun, dalam beberapa kasus, satu tindakan tunggal mengontrol akses ke lebih dari satu operasi. Atau, beberapa operasi memerlukan beberapa tindakan yang berbeda.
Kolom tipe sumber daya pada tabel Tindakan menunjukkan apakah setiap tindakan mendukung izin tingkat sumber daya. Jika tidak ada nilai untuk kolom ini, Anda harus menentukan semua sumber daya (“*”) yang berlaku kebijakan dalam Resource
elemen pernyataan kebijakan Anda. Jika kolom mencantumkan jenis sumber daya, maka Anda dapat menyebutkan ARN dengan jenis tersebut dalam sebuah pernyataan dengan tindakan tersebut. Jika tindakan memiliki satu atau lebih sumber daya yang diperlukan, pemanggil harus memiliki izin untuk menggunakan tindakan dengan sumber daya tersebut. Sumber daya yang diperlukan ditunjukkan dalam tabel dengan tanda bintang (*). Jika Anda membatasi akses sumber daya dengan Resource
elemen dalam kebijakan IAM, Anda harus menyertakan ARN atau pola untuk setiap jenis sumber daya yang diperlukan. Beberapa tindakan mendukung berbagai jenis sumber daya. Jika jenis sumber daya opsional (tidak ditunjukkan sesuai kebutuhan), maka Anda dapat memilih untuk menggunakan salah satu jenis sumber daya opsional.
Kolom Condition keys pada tabel Actions menyertakan kunci yang dapat Anda tentukan dalam Condition
elemen pernyataan kebijakan. Untuk informasi selengkapnya tentang kunci kondisi yang terkait dengan sumber daya untuk layanan, lihat kolom Kunci kondisi pada tabel Jenis sumber daya.
catatan
Kunci kondisi sumber daya tercantum dalam tabel Jenis sumber daya. Anda dapat menemukan tautan ke jenis sumber daya yang berlaku untuk tindakan di kolom Jenis sumber daya (*wajib) pada tabel Tindakan. Jenis sumber daya dalam tabel Jenis sumber daya menyertakan kolom Kunci kondisi, yang merupakan kunci kondisi sumber daya yang berlaku untuk tindakan dalam tabel Tindakan.
Untuk detail tentang kolom dalam tabel berikut, lihat Tabel tindakan.
Tindakan | Deskripsi | Tingkat akses | Jenis sumber daya (*diperlukan) | Kunci syarat | Tindakan bergantung |
---|---|---|---|---|---|
AssociateApi | Memberikan izin untuk melampirkan GraphQL API ke nama domain khusus di AppSync | Tulis | |||
AssociateMergedGraphqlApi | Memberikan izin untuk mengaitkan API gabungan ke API sumber | Tulis | |||
AssociateSourceGraphqlApi | Memberikan izin untuk mengaitkan API sumber ke API gabungan | Tulis | |||
CreateApiCache | Memberikan izin untuk membuat cache API di AppSync | Tulis | |||
CreateApiKey | Memberikan izin untuk membuat kunci unik yang dapat Anda distribusikan ke klien yang menjalankan API Anda | Tulis | |||
CreateDataSource | Memberikan izin untuk membuat sumber data | Tulis | |||
CreateDomainName | Memberikan izin untuk membuat nama domain kustom di AppSync | Tulis | |||
CreateFunction | Memberikan izin untuk membuat fungsi baru | Tulis | |||
CreateGraphqlApi | Memberikan izin untuk membuat GraphQL API, yang merupakan sumber daya tingkat atas AppSync | Tulis |
iam:CreateServiceLinkedRole |
||
CreateResolver | Memberikan izin untuk membuat resolver. Resolver mengubah permintaan masuk ke dalam format yang dapat dipahami oleh sumber data, dan mengubah respons sumber data menjadi GraphQL | Tulis | |||
CreateType | Memberikan izin untuk membuat tipe | Tulis | |||
DeleteApiCache | Memberikan izin untuk menghapus cache API di AppSync | Tulis | |||
DeleteApiKey | Memberikan izin untuk menghapus kunci API | Tulis | |||
DeleteDataSource | Memberikan izin untuk menghapus sumber data | Tulis | |||
DeleteDomainName | Memberikan izin untuk menghapus nama domain kustom di AppSync | Tulis | |||
DeleteFunction | Memberikan izin untuk menghapus fungsi | Tulis | |||
DeleteGraphqlApi | Memberikan izin untuk menghapus GraphQL Api. Ini juga akan membersihkan setiap AppSync sumber daya di bawah API itu | Tulis | |||
DeleteResolver | Memberikan izin untuk menghapus resolver | Tulis | |||
DeleteResourcePolicy[hanya izin] | Memberikan izin untuk menghapus kebijakan sumber daya | Tulis | |||
DeleteType | Memberikan izin untuk menghapus tipe | Tulis | |||
DisassociateApi | Memberikan izin untuk melepaskan GraphQL API ke nama domain khusus di AppSync | Tulis | |||
DisassociateMergedGraphqlApi | Memberikan izin untuk menghapus API sumber terkait dari API gabungan yang diidentifikasi oleh API sumber | Tulis | |||
DisassociateSourceGraphqlApi | Memberikan izin untuk menghapus API sumber terkait dari API gabungan yang diidentifikasi oleh API gabungan | Tulis | |||
EvaluateCode | Memberikan izin untuk mengevaluasi kode dengan runtime dan konteks | Baca | |||
EvaluateMappingTemplate | Memberikan izin untuk mengevaluasi pemetaan template | Baca | |||
FlushApiCache | Memberikan izin untuk menyiram cache API AppSync | Tulis | |||
GetApiAssociation | Memberikan izin untuk membaca nama domain khusus - Detail asosiasi API GraphQL di AppSync | Baca | |||
GetApiCache | Memberikan izin untuk membaca informasi tentang cache API di AppSync | Baca | |||
GetDataSource | Memberikan izin untuk mengambil sumber data | Baca | |||
GetDataSourceIntrospection | Memberikan izin untuk mengambil introspeksi sumber data | Baca | |||
GetDomainName | Memberikan izin untuk membaca informasi tentang nama domain kustom di AppSync | Baca | |||
GetFunction | Memberikan izin untuk mengambil fungsi | Baca | |||
GetGraphqlApi | Memberikan izin untuk mengambil GraphQL API | Baca | |||
GetGraphqlApiEnvironmentVariables | Memberikan izin untuk mengambil variabel lingkungan untuk GraphQL API | Baca | |||
GetIntrospectionSchema | Memberikan izin untuk mengambil skema introspeksi untuk GraphQL API | Baca | |||
GetResolver | Memberikan izin untuk mengambil resolver | Baca | |||
GetResourcePolicy[hanya izin] | Memberikan izin untuk membaca kebijakan sumber daya | Baca | |||
GetSchemaCreationStatus | Memberikan izin untuk mengambil status operasi pembuatan skema saat ini | Baca | |||
GetSourceApiAssociation | Memberikan izin untuk membaca informasi tentang API sumber terkait API gabungan | Baca | |||
GetType | Memberikan izin untuk mengambil tipe | Baca | |||
GraphQL | Memberikan izin untuk mengirim kueri GraphQL ke GraphQL API | Tulis | |||
ListApiKeys | Memberikan izin untuk mencantumkan kunci API untuk API tertentu | Daftar | |||
ListDataSources | Memberikan izin untuk mencantumkan sumber data untuk API tertentu | Daftar | |||
ListDomainNames | Memberikan izin untuk menghitung nama domain kustom di AppSync | Daftar | |||
ListFunctions | Memberikan izin untuk membuat daftar fungsi untuk API tertentu | Daftar | |||
ListGraphqlApis | Memberikan izin untuk mencantumkan GraphQL API | Daftar | |||
ListResolvers | Memberikan izin untuk membuat daftar resolver untuk API dan tipe tertentu | Daftar | |||
ListResolversByFunction | Memberikan izin untuk membuat daftar resolver yang terkait dengan fungsi tertentu | Daftar | |||
ListSourceApiAssociations | Memberikan izin untuk mencantumkan API sumber yang terkait dengan API gabungan yang diberikan | Daftar | |||
ListTagsForResource | Memberikan izin untuk membuat daftar tag untuk sumber daya | Baca | |||
ListTypes | Memberikan izin untuk membuat daftar tipe untuk API tertentu | Daftar | |||
ListTypesByAssociation | Memberikan izin untuk mencantumkan tipe untuk API gabungan dan asosiasi API sumber tertentu | Daftar | |||
PutGraphqlApiEnvironmentVariables | Memberikan izin untuk memperbarui variabel lingkungan untuk GraphQL API | Tulis | |||
PutResourcePolicy[hanya izin] | Memberikan izin untuk menetapkan kebijakan sumber daya | Tulis | |||
SetWebACL | Memberikan izin untuk mengatur ACL web | Tulis | |||
SourceGraphQL[hanya izin] | Memberikan izin untuk mengirim kueri GraphQL ke API sumber API gabungan | Tulis | |||
StartDataSourceIntrospection | Memberikan izin untuk mengintrospeksi sumber data | Tulis | |||
StartSchemaCreation | Memberikan izin untuk menambahkan skema baru ke GraphQL API Anda. Operasi ini asinkron - GetSchemaCreationStatus dapat menunjukkan kapan telah selesai | Tulis | |||
StartSchemaMerge | Memberikan izin untuk memulai penggabungan skema untuk API gabungan tertentu dan API sumber terkait | Tulis | |||
TagResource | Memberikan izin untuk menandai sumber daya | Penandaan | |||
UntagResource | Memberikan izin untuk menghapus tag sumber daya | Penandaan | |||
UpdateApiCache | Memberikan izin untuk memperbarui cache API di AppSync | Tulis | |||
UpdateApiKey | Memberikan izin untuk memperbarui kunci API untuk API tertentu | Tulis | |||
UpdateDataSource | Memberikan izin untuk memperbarui sumber data | Tulis | |||
UpdateDomainName | Memberikan izin untuk memperbarui nama domain kustom di AppSync | Tulis | |||
UpdateFunction | Memberikan izin untuk memperbarui fungsi yang ada | Tulis | |||
UpdateGraphqlApi | Memberikan izin untuk memperbarui GraphQL API | Tulis |
iam:CreateServiceLinkedRole |
||
UpdateResolver | Memberikan izin untuk memperbarui resolver | Tulis | |||
UpdateSourceApiAssociation | Memberikan izin untuk memperbarui asosiasi API sumber API gabungan | Tulis | |||
UpdateType | Memberikan izin untuk memperbarui tipe | Tulis |
Jenis sumber daya didefinisikan oleh AWS AppSync
Jenis sumber daya berikut ditentukan oleh layanan ini dan dapat digunakan dalam elemen Resource
pernyataan kebijakan izin IAM. Setiap tindakan dalam Tabel tindakan mengidentifikasi jenis sumber daya yang dapat ditentukan dengan tindakan tersebut. Jenis sumber daya juga dapat menentukan kunci kondisi mana yang dapat Anda sertakan dalam kebijakan. Tombol-tombol ini ditampilkan di kolom terakhir dari tabel Jenis sumber daya. Untuk detail tentang kolom dalam tabel berikut, lihat Tabel tipe sumber daya.
Jenis sumber daya | ARN | Kunci syarat |
---|---|---|
datasource |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/datasources/${DatasourceName}
|
|
domain |
arn:${Partition}:appsync:${Region}:${Account}:domainnames/${DomainName}
|
|
graphqlapi |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}
|
|
field |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}/fields/${FieldName}
|
|
type |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}
|
|
function |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/functions/${FunctionId}
|
|
sourceApiAssociation |
arn:${Partition}:appsync:${Region}:${Account}:apis/${MergedGraphQLAPIId}/sourceApiAssociations/${Associationid}
|
|
mergedApiAssociation |
arn:${Partition}:appsync:${Region}:${Account}:apis/${SourceGraphQLAPIId}/mergedApiAssociations/${Associationid}
|
Kunci kondisi untuk AWS AppSync
AWS AppSync mendefinisikan kunci kondisi berikut yang dapat digunakan dalam Condition
elemen kebijakan IAM. Anda dapat menggunakan kunci ini untuk menyempurnakan syarat lebih lanjut saat pernyataan kebijakan berlaku. Untuk detail tentang kolom dalam tabel berikut, lihat Tabel tombol kondisi.
Untuk melihat kunci kondisi global yang tersedia untuk semua layanan, lihat Kunci kondisi global yang tersedia.
Kunci syarat | Deskripsi | Jenis |
---|---|---|
appsync:Visibility | Memfilter akses berdasarkan visibilitas API | String |
aws:RequestTag/${TagKey} | Memfilter akses dengan pasangan nilai kunci tag dalam permintaan | String |
aws:ResourceTag/${TagKey} | Memfilter akses dengan pasangan nilai kunci tag yang dilampirkan ke sumber daya | String |
aws:TagKeys | Memfilter akses dengan adanya kunci tag dalam permintaan | ArrayOfString |