Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Sebelum Anda menggunakan IAM untuk mengelola akses ke API Gateway, Anda harus memahami fitur IAM apa yang tersedia untuk digunakan dengan API Gateway. Untuk mendapatkan tampilan tingkat tinggi tentang cara kerja API Gateway dan AWS layanan lainnya dengan IAM, lihat AWS Layanan yang Bekerja dengan IAM di Panduan Pengguna IAM.
Topik
Kebijakan berbasis identitas API Gateway
Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan tindakan dan sumber daya mana yang diizinkan atau ditolak serta kondisi di mana tindakan diizinkan atau ditolak. API Gateway mendukung tindakan, sumber daya, dan kunci kondisi tertentu. Untuk informasi selengkapnya tentang tindakan, sumber daya, dan kunci kondisi khusus Gateway API, lihat Kunci tindakan, sumber daya, dan kondisi untuk Pengelolaan dan Tindakan Amazon API Gateway, sumber daya, dan kunci kondisi untuk Amazon API Gateway Management V2. Untuk informasi tentang semua elemen yang Anda gunakan dalam kebijakan JSON, lihat Referensi Elemen Kebijakan IAM JSON di Panduan Pengguna IAM.
Contoh berikut menunjukkan kebijakan berbasis identitas yang memungkinkan pengguna untuk membuat atau memperbarui hanya REST pribadi. APIs Untuk contoh lainnya, lihat Contoh kebijakan berbasis identitas Amazon API Gateway.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ScopeToPrivateApis",
"Effect": "Allow",
"Action": [
"apigateway:PATCH",
"apigateway:POST",
"apigateway:PUT"
],
"Resource": [
"arn:aws:apigateway:us-east-1::/restapis",
"arn:aws:apigateway:us-east-1::/restapis/??????????"
],
"Condition": {
"ForAllValues:StringEqualsIfExists": {
"apigateway:Request/EndpointType": "PRIVATE",
"apigateway:Resource/EndpointType": "PRIVATE"
}
}
},
{
"Sid": "AllowResourcePolicyUpdates",
"Effect": "Allow",
"Action": [
"apigateway:UpdateRestApiPolicy"
],
"Resource": [
"arn:aws:apigateway:us-east-1::/restapis/*"
]
}
]
}
Tindakan
Elemen Action
dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan.
Tindakan kebijakan di API Gateway menggunakan awalan berikut sebelum tindakan:apigateway:
. Pernyataan kebijakan harus memuat elemen Action
atau NotAction
. API Gateway mendefinisikan serangkaian tindakannya sendiri yang menjelaskan tugas yang dapat Anda lakukan dengan layanan ini.
Action
Ekspresi API-managing memiliki formatapigateway:
, di mana action
action
salah satu tindakan API Gateway berikut: GET, POST, PUT, DELETE, PATCH (untuk memperbarui sumber daya), atau *, yang merupakan semua tindakan sebelumnya.
Beberapa contoh Action
ekspresi meliputi:
-
apigateway:*
untuk semua tindakan API Gateway. -
apigateway:GET
hanya untuk tindakan GET di API Gateway.
Untuk menetapkan beberapa tindakan dalam satu pernyataan, pisahkan tindakan-tindakan tersebut menggunakan koma seperti berikut:
"Action": [ "apigateway:action1", "apigateway:action2"
Untuk informasi tentang kata kerja HTTP yang akan digunakan untuk operasi API Gateway tertentu, lihat Referensi API Amazon API Gateway Versi 1 (REST APIs) dan Referensi API Amazon API Gateway Versi 2 (WebSocket dan HTTP APIs).
Untuk informasi selengkapnya, lihat Contoh kebijakan berbasis identitas Amazon API Gateway.
Sumber daya
Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana utama dapat melakukan tindakan pada sumber daya, dan dalam kondisi apa.
Elemen kebijakan JSON Resource
menentukan objek yang menjadi target penerapan tindakan. Pernyataan harus menyertakan elemen Resource
atau NotResource
. Praktik terbaiknya, tentukan sumber daya menggunakan Amazon Resource Name (ARN). Anda dapat melakukan ini untuk tindakan yang mendukung jenis sumber daya tertentu, yang dikenal sebagai izin tingkat sumber daya.
Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, misalnya operasi pencantuman, gunakan wildcard (*) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.
"Resource": "*"
Sumber daya API Gateway memiliki format ARN berikut:
arn:aws:apigateway:
region
::resource-path-specifier
Misalnya, untuk menentukan REST API dengan id
dan sub-sumber dayanya, seperti otorisasi dalam pernyataan Anda, gunakan ARN berikut:api-id
"Resource": "arn:aws:apigateway:us-east-2::/restapis/api-id/*"
Untuk menentukan semua REST APIs dan sub-sumber daya milik akun tertentu, gunakan wildcard (*):
"Resource": "arn:aws:apigateway:us-east-2::/restapis/*"
Untuk daftar jenis sumber daya API Gateway dan jenisnya ARNs, lihatReferensi API Gateway Amazon Resource Name (ARN).
Kunci syarat
Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana utama dapat melakukan tindakan pada sumber daya, dan dalam kondisi apa.
Elemen Condition
(atau blok Condition
) akan memungkinkan Anda menentukan kondisi yang menjadi dasar suatu pernyataan berlaku. Elemen Condition
bersifat opsional. Anda dapat membuat ekspresi bersyarat yang menggunakan operator kondisi, misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta.
Jika Anda menentukan beberapa elemen Condition
dalam sebuah pernyataan, atau beberapa kunci dalam elemen Condition
tunggal, maka AWS akan mengevaluasinya menggunakan operasi AND
logis. Jika Anda menentukan beberapa nilai untuk satu kunci kondisi, AWS mengevaluasi kondisi menggunakan OR
operasi logis. Semua kondisi harus dipenuhi sebelum izin pernyataan diberikan.
Anda juga dapat menggunakan variabel placeholder saat menentukan kondisi. Sebagai contoh, Anda dapat memberikan izin kepada pengguna IAM untuk mengakses sumber daya hanya jika izin tersebut mempunyai tanda yang sesuai dengan nama pengguna IAM mereka. Untuk informasi selengkapnya, lihat Elemen kebijakan IAM: variabel dan tanda dalam Panduan Pengguna IAM.
AWS mendukung kunci kondisi global dan kunci kondisi khusus layanan. Untuk melihat semua kunci kondisi AWS global, lihat kunci konteks kondisi AWS global di Panduan Pengguna IAM.
API Gateway mendefinisikan kumpulan kunci kondisinya sendiri dan juga mendukung penggunaan beberapa kunci kondisi global. Untuk daftar kunci kondisi API Gateway, lihat Kunci Kondisi untuk Amazon API Gateway di Panduan Pengguna IAM. Untuk informasi tentang tindakan dan sumber daya yang dapat Anda gunakan dengan kunci kondisi, lihat Tindakan yang Ditentukan oleh Amazon API Gateway.
Untuk informasi tentang penandaan, termasuk kontrol akses berbasis atribut, lihat. Menandai sumber daya API Gateway Anda
Contoh
Untuk contoh kebijakan berbasis identitas API Gateway, lihat. Contoh kebijakan berbasis identitas Amazon API Gateway
Kebijakan berbasis sumber daya API Gateway
Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang menentukan tindakan apa yang dapat dilakukan oleh prinsipal tertentu pada sumber daya API Gateway dan dalam kondisi apa. API Gateway mendukung kebijakan izin berbasis sumber daya untuk REST. APIs Anda menggunakan kebijakan sumber daya untuk mengontrol siapa yang dapat menjalankan REST API. Untuk informasi selengkapnya, lihat Mengontrol akses ke REST API dengan kebijakan sumber daya API Gateway.
Contoh
Untuk contoh kebijakan berbasis sumber daya API Gateway, lihat. Contoh kebijakan sumber daya API Gateway
Otorisasi berdasarkan tag API Gateway
Anda dapat melampirkan tag ke resource API Gateway atau meneruskan tag dalam permintaan ke API Gateway. Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di elemen kondisi dari kebijakan menggunakan kunci kondisi apigateway:ResourceTag/
, key-name
aws:RequestTag/
, atau key-name
aws:TagKeys
. Untuk informasi selengkapnya tentang menandai resource API Gateway, lihatMenggunakan tag untuk mengontrol akses ke sumber daya API API Gateway REST API.
Untuk contoh kebijakan berbasis identitas untuk membatasi akses ke sumber daya berdasarkan tag pada sumber daya tersebut, lihat. Menggunakan tag untuk mengontrol akses ke sumber daya API API Gateway REST API
Peran IAM API Gateway
Peran IAM adalah entitas dalam AWS akun Anda yang memiliki izin tertentu.
Menggunakan kredensi sementara dengan API Gateway
Anda dapat menggunakan kredensial sementara untuk masuk dengan gabungan, menjalankan IAM role, atau menjalankan peran lintas akun. Anda memperoleh kredensil keamanan sementara dengan memanggil operasi AWS STS API seperti AssumeRoleatau. GetFederationToken
API Gateway mendukung penggunaan kredensi sementara.
Peran terkait layanan
Peran terkait AWS layanan memungkinkan layanan mengakses sumber daya di layanan lain untuk menyelesaikan tindakan atas nama Anda. Peran terkait layanan muncul di akun IAM Anda dan dimiliki oleh layanan tersebut. Administrator IAM dapat melihat tetapi tidak dapat mengedit izin untuk peran terkait layanan.
API Gateway mendukung peran terkait layanan. Untuk informasi tentang membuat atau mengelola peran terkait layanan API Gateway, lihat. Menggunakan peran terkait layanan untuk API Gateway
Peran layanan
Layanan dapat mengambil peran layanan atas nama Anda. Peran layanan memungkinkan layanan mengakses sumber daya di layanan lain untuk menyelesaikan tindakan atas nama Anda. Peran layanan muncul di akun IAM Anda dan dimiliki oleh akun, sehingga administrator dapat mengubah izin untuk peran ini. Namun, melakukan hal itu dapat merusak fungsionalitas layanan.
API Gateway mendukung peran layanan.