Kontrol akses berdasarkan atribut identitas dengan Izin Terverifikasi - Amazon API Gateway

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

Kontrol akses berdasarkan atribut identitas dengan Izin Terverifikasi

Gunakan Izin Terverifikasi Amazon untuk mengontrol akses ke API Gateway API Anda. Saat Anda menggunakan API Gateway dengan Izin Terverifikasi, Izin Terverifikasi akan membuat otorisasi Lambda yang menggunakan keputusan otorisasi berbutir halus untuk mengontrol akses ke API Anda. Izin Terverifikasi mengotorisasi pemanggil berdasarkan skema penyimpanan kebijakan dan kebijakan menggunakan bahasa kebijakan Cedar untuk menentukan izin berbutir halus bagi pengguna aplikasi. Untuk informasi selengkapnya, lihat Membuat penyimpanan kebijakan dengan API dan penyedia identitas yang terhubung di Panduan Pengguna Izin Terverifikasi Amazon.

Izin Terverifikasi mendukung kumpulan pengguna Amazon Cognito atau penyedia identitas OpenID Connect (OIDC) sebagai sumber identitas. Izin Terverifikasi menganggap bahwa prinsipal telah diidentifikasi dan diautentikasi sebelumnya. Izin Terverifikasi hanya didukung untuk REST Regional dan yang dioptimalkan di tepi. APIs

Buat otorisasi Lambda menggunakan Izin Terverifikasi

Izin Terverifikasi membuat otorisasi Lambda untuk menentukan apakah prinsipal diizinkan melakukan tindakan pada API Anda. Anda membuat kebijakan Cedar yang digunakan Izin Terverifikasi untuk melakukan tugas otorisasi.

Berikut ini adalah contoh kebijakan Cedar yang memungkinkan akses untuk menjalankan API berdasarkan kumpulan pengguna Amazon Cognitous-east-1_ABC1234, untuk grup developer pada GET /users sumber daya API. Izin Terverifikasi menentukan keanggotaan grup dengan mengurai token pembawa untuk identitas pemanggil.

permit( principal in MyAPI::UserGroup::"us-east-1_ABC1234|developer", action in [ MyAPI::Action::"get /users" ], resource );

Secara opsional, Izin Terverifikasi dapat melampirkan otorisasi ke metode API Anda. Pada tahap produksi untuk API Anda, kami menyarankan agar Anda tidak mengizinkan Izin Terverifikasi untuk melampirkan otorisasi untuk Anda.

Daftar berikut menunjukkan cara mengonfigurasi Izin Terverifikasi untuk melampirkan atau tidak melampirkan otorisasi Lambda ke permintaan metode metode API Anda.

Lampirkan otorisasi untuk Anda ()AWS Management Console

Saat Anda memilih Buat penyimpanan kebijakan di konsol Izin Terverifikasi, di halaman integrasi aplikasi Deploy, pilih Sekarang.

Jangan lampirkan otorisasi untuk Anda ()AWS Management Console

Saat Anda memilih Buat penyimpanan kebijakan di konsol Izin Terverifikasi, di halaman Integrasi aplikasi Terapkan, pilih Nanti.

Izin Terverifikasi masih membuat otorisasi Lambda untuk Anda. Otorisasi Lambda dimulai dengan. AVPAuthorizerLambda- Untuk petunjuk selengkapnya tentang cara melampirkan otorisasi Anda pada suatu metode, lihatKonfigurasikan metode untuk menggunakan otorisasi Lambda (konsol).

Lampirkan otorisasi untuk Anda ()AWS CloudFormation

Di AWS CloudFormation template yang dihasilkan Izin Terverifikasi, di Conditions bagian, atur ke. "Ref": "shouldAttachAuthorizer" true

Jangan lampirkan otorisasi untuk Anda ()AWS CloudFormation

Di AWS CloudFormation template yang dihasilkan Izin Terverifikasi, di Conditions bagian, atur ke. "Ref": "shouldAttachAuthorizer" false

Izin Terverifikasi masih membuat otorisasi Lambda untuk Anda. Otorisasi Lambda dimulai dengan. AVPAuthorizerLambda- Untuk petunjuk selengkapnya tentang cara melampirkan otorisasi Anda pada suatu metode, lihatKonfigurasikan metode untuk menggunakan otorisasi Lambda ()AWS CLI.

Panggil otorisasi Lambda menggunakan Izin Terverifikasi

Anda dapat menghubungi otorisasi Lambda Anda dengan memberikan identitas atau token akses di header. Authorization Untuk informasi selengkapnya, lihat Panggil API dengan otorisasi API Gateway Lambda.

API Gateway menyimpan kebijakan yang dikembalikan oleh otorisasi Lambda Anda selama 120 detik. Anda dapat memodifikasi TTL di konsol API Gateway atau dengan menggunakan. AWS CLI