Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 31277|Jawab: 2

[Sumber] Otorisasi Berbasis Peran

[Salin tautan]
Dipaparkan pada 2020-6-7 21:25:56 | | |
133 dari 153 orang menganggap ini bermanfaat
Ketika identitas dibuat, identitas tersebut mungkin milik satu atau lebih peran, misalnya Tracy mungkin milik peran Administrator dan Pengguna sementara Scott mungkin hanya milik peran pengguna. Bagaimana peran ini dibuat dan dikelola bergantung pada penyimpanan pendukung proses otorisasi. Peran diekspos ke pengembang melalui properti IsInRole pada kelas ClaimsPrincipal.

Identitas baru dapat menjadi milik satu atau beberapa peran, misalnya, Tracy dapat menjadi bagian dari peran Administrator dan Pengguna, dan Sementara Scott hanya dapat menjadi bagian dari peran Pengguna. Bagaimana peran ini dibuat dan dikelola tergantung pada bagaimana proses otorisasi disimpan. Metode IsInRole dari kelas ClaimsPrincipal memberi pengembang cara menggunakan peran.

Menambahkan pemeriksaan peran Menambahkan validasi peran

Pemeriksaan otorisasi berbasis peran bersifat deklaratif - pengembang menyematkannya dalam kode mereka, terhadap pengontrol atau tindakan dalam pengontrol, menentukan peran yang harus dilakukan pengguna saat ini menjadi anggota untuk mengakses sumber daya yang diminta.

Autentikasi berbasis peran berbasis klaim, yang disematkan oleh pengembang ke dalam kode mereka, menetapkan peran ke pengontrol atau metode di dalamnya, menentukan bahwa pengguna dalam permintaan harus memenuhi persyaratan keanggotaan yang sesuai.

Misalnya, kode berikut akan membatasi akses ke tindakan apa pun di AdministrationController untuk pengguna yang merupakan anggota grup Administrator.

Misalnya, kode berikut akan membatasi metode apa pun di AdministrationController untuk digunakan hanya dengan menjadi anggota grup Administrator.



Anda dapat menentukan beberapa peran sebagai daftar yang dipisahkan koma;

Anda dapat menambahkan beberapa peran yang ditetapkan ke daftar pemisahan koma:



Pengontrol ini hanya akan dapat diakses oleh pengguna yang merupakan anggota peran HRManager atau peran Keuangan.

Pengontrol hanya akan dapat diakses oleh anggota peran HRManager atau peran Keuangan.

Jika Anda menerapkan beberapa atribut, maka pengguna yang mengakses harus menjadi anggota dari semua peran yang ditentukan; contoh berikut mengharuskan pengguna harus menjadi anggota peran PowerUser dan ControlPanelUser.

Jika Anda menggunakan beberapa atribut, pengguna akses harus menjadi anggota semua peran; Contoh berikut mengharuskan pengguna menjadi anggota peran PowerUser dan ControlPanelUser.



Anda dapat membatasi akses lebih lanjut dengan menerapkan atribut otorisasi peran tambahan di tingkat tindakan;

Anda dapat menggunakan atribut otorisasi peran tambahan di tingkat metode untuk menerapkan pembatasan penggunaan tambahan;




Dalam cuplikan kode sebelumnya, anggota peran Administrator atau peran PowerUser dapat mengakses pengontrol dan tindakan SetTime, tetapi hanya anggota peran Administrator yang dapat mengakses Aksi Matikan.

Dalam cuplikan kode sebelumnya, anggota peran Administrator atau PowerUser dapat menggunakan metode pengontrol dan SetTime, tetapi hanya anggota peran Administrator yang dapat menggunakan metode ShutDown.

Anda juga dapat mengunci pengontrol tetapi mengizinkan akses anonim yang tidak diautentikasi ke tindakan individual.

Anda juga dapat memblokir pengontrol, tetapi mengizinkan pengguna anonim menggunakan metode terpisah tanpa izin.



Pemeriksaan peran berbasis kebijakan Pemeriksaan peran berbasis kebijakan

Persyaratan peran juga dapat dinyatakan menggunakan sintaks Kebijakan baru, di mana pengembang mendaftarkan kebijakan saat startup sebagai bagian dari konfigurasi layanan Otorisasi. Ini biasanya mengambil bagian dalam ConfigureServices() di file Startup.cs Anda.

Peran juga dapat dicapai dengan menggunakan sintaks kebijakan baru, di mana pengembang mendaftarkan kebijakan sebagai bagian dari konfigurasi layanan otorisasi di startup. Ini biasanya ditambahkan ke ConfigureServices() file Sartup.cs.



Kebijakan diterapkan menggunakan properti Kebijakan pada atribut AuthorizeAttribute;

Terapkan kebijakan dengan menggunakan properti Policy di atas properti AuthorizeAttribute.



Jika Anda ingin menentukan beberapa peran yang diizinkan dalam persyaratan, maka Anda dapat menentukannya sebagai parameter untuk metode RequireRole;

Jika Anda ingin menentukan beberapa peran dalam permintaan, Anda dapat menentukannya sebagai beberapa parameter metode RequireRole:



contohnya mengotorisasi pengguna yang termasuk dalam peran Administrator, PowerUser atau BackupAdministrator.

Pengguna yang berwenang dalam contoh ini akan menjadi bagian dari peran Administrator, PowerUser, atau BackupAdministrator.

Ditransfer dari:Login hyperlink terlihat.




Mantan:Memecahkan masalah di mana HttpContext.User.IsInRole() selalu mengembalikan false
Depan:TS Parameter radix hilang (radix)
 Tuan tanah| Dipaparkan pada 2020-6-7 21:36:01 |


Jika Anda hanya ingin menerapkan fitur terakhir, yaitu:

Anda dapat menambahkan hal berikut ke filter kustom:


Izinkan Banyak

Atribut ini menandai apakah fitur kustom kita dapat ditempatkan beberapa kali sebelum entitas program yang sama.
 Tuan tanah| Dipaparkan pada 2020-6-10 11:46:34 |
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com