Contoh 5: Pemfilteran UI dengan Izin Terverifikasi dan Cedar - AWS Bimbingan Preskriptif

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

Contoh 5: Pemfilteran UI dengan Izin Terverifikasi dan Cedar

Anda juga dapat menggunakan Izin Terverifikasi untuk menerapkan pemfilteran RBAC elemen UI berdasarkan tindakan yang diotorisasi. Ini sangat berharga untuk aplikasi yang memiliki elemen UI peka konteks yang mungkin terkait dengan pengguna atau penyewa tertentu dalam kasus aplikasi SaaS multi-penyewa.

Dalam contoh berikut, Users dari tidak Role viewer diizinkan untuk melakukan pembaruan. Untuk pengguna ini, UI tidak boleh membuat tombol pembaruan apa pun.

Contoh pemfilteran UI dengan Izin Terverifikasi Amazon dan Cedar

Dalam contoh ini, aplikasi web satu halaman memiliki empat tombol. Tombol mana yang terlihat tergantung pada Role pengguna yang saat ini masuk ke aplikasi. Saat aplikasi web satu halaman merender UI, ia menanyakan Izin Terverifikasi untuk menentukan tindakan mana yang diizinkan oleh pengguna untuk dilakukan, dan kemudian menghasilkan tombol berdasarkan keputusan otorisasi.

Kebijakan berikut menetapkan bahwa tipe Role dengan nilai viewer dapat menampilkan pengguna dan data. Keputusan ALLOW otorisasi untuk kebijakan ini memerlukan viewUsers tindakan viewData atau, dan juga memerlukan sumber daya untuk dikaitkan dengan jenis Data atauUsers. ALLOWKeputusan memungkinkan UI untuk membuat dua tombol: viewDataButton danviewUsersButton.

permit ( principal in GuiAPP::Role::"viewer", action in [GuiAPP::Action::"viewData", GuiAPP::Action::"viewUsers"], resource ) when { resource in [GuiAPP::Type::"Data", GuiAPP::Type::"Users"] };

Kebijakan berikut menetapkan bahwa tipe Role dengan nilai hanya viewerDataOnly dapat menampilkan data. Keputusan ALLOW otorisasi untuk kebijakan ini memerlukan viewData tindakan, dan juga memerlukan sumber daya untuk dikaitkan dengan jenisnyaData. ALLOWKeputusan memungkinkan UI untuk merender tombolviewDataButton.

permit ( principal in GuiApp::Role::"viewerDataOnly", action in [GuiApp::Action::"viewData"], resource in [GuiApp::Type::"Data"] );

Kebijakan berikut menetapkan bahwa tipe Role dengan nilai admin dapat mengedit dan menampilkan data dan pengguna. Keputusan ALLOW otorisasi untuk kebijakan ini memerlukan tindakanupdateData,, viewData, atau updateUsersviewUsers, dan juga memerlukan sumber daya untuk dikaitkan dengan jenis Data atauUsers. ALLOWKeputusan memungkinkan UI untuk merender keempat tombol:updateDataButton,, updateUsersButtonviewDataButton, danviewUsersButton.

permit ( principal in GuiApp::Role::"admin", action in [ GuiApp::Action::"updateData", GuiApp::Action::"updateUsers", GuiApp::Action::"viewData", GuiApp::Action::"viewUsers" ], resource ) when { resource in [GuiApp::Type::"Data", GuiApp::Type::"Users"] };