Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 31277|Atbildi: 2

[Avots] Lomu autorizācija

[Kopēt saiti]
Publicēts 2020-6-7 21:25:56 | | |
133 no 153 cilvēkiem to uzskatīja par noderīgu
Kad identitāte tiek izveidota, tā var piederēt vienai vai vairākām lomām, piemēram, Treisijs var piederēt administratora un lietotāja lomām, bet Skots var piederēt tikai lietotāja lomai. Tas, kā šīs lomas tiek izveidotas un pārvaldītas, ir atkarīgs no autorizācijas procesa dublējuma krātuves. Lomas attīstītājam tiek atklātas, izmantojot rekvizītu IsInRole klasē ClaimsPrincipal.

Jaunā identitāte var piederēt vienai vai vairākām lomām, piemēram, Treisija var piederēt lomām Administrators un Lietotājs, un Kamēr Skots var piederēt tikai Lietotāja lomai. Tas, kā šīs lomas tiek izveidotas un pārvaldītas, ir atkarīgs no tā, kā tiek glabāts autorizācijas process. Klases ClaimsPrincipal metode IsInRole nodrošina izstrādātājiem iespēju izmantot lomu.

Lomu pārbaužu pievienošana Lomu validācijas pievienošana

Uz lomām balstītas autorizācijas pārbaudes ir deklaratīvas - izstrādātājs tās iegulda savā kodā, pret kontrolieri vai darbību kontrolierī, norādot lomas, kas pašreizējam lietotājam ir jāuzņemas Esiet dalībnieks, lai piekļūtu pieprasītajam resursam.

Lomu autentifikācija ir balstīta uz pretenzijām, ko izstrādātāji iegulda savā kodā, piešķirot lomas kontrolierim vai tajā esošajām metodēm, norādot, ka lietotājiem pieprasījumā jāatbilst atbilstošajām dalības prasībām.

Piemēram, tālāk norādītais kods ierobežo piekļuvi visām darbībām AdministrationController lietotājiem, kas ir administratoru grupas dalībnieki.

Piemēram, tālāk norādītais kods ierobežos jebkuru AdministrationController metodi, ko var izmantot tikai administratoru grupas dalībnieks.



Jūs varat norādīt vairākas lomas kā komatu atdalītu sarakstu;

Komatu sadalījuma sarakstam var pievienot vairākas piešķirtās lomas:



Šis kontrolieris būs pieejams tikai lietotājiem, kas ir HRManager vai Finanšu lomas dalībnieki.

Kontrolieris būs pieejams tikai HRManager vai Finanšu lomas dalībniekiem.

Ja lietojat vairākus atribūtus, lietotājam, kas piekļūst, ir jābūt visu norādīto lomu dalībniekam; Šajā piemērā ir nepieciešams, lai lietotājam būtu jābūt gan PowerUser, gan ControlPanelUser lomas dalībniekam.

Ja izmantojat vairākus atribūtus, piekļuves lietotājam ir jābūt visu lomu dalībniekam; Tālāk sniegtajā piemērā lietotājam ir jābūt gan PowerUser, gan ControlPanelUser lomu dalībniekam.



Varat vēl vairāk ierobežot piekļuvi, darbības līmenī lietojot papildu lomu autorizācijas atribūtus;

Varat izmantot papildu lomu autorizācijas atribūtus metodes līmenī, lai lietotu papildu lietošanas ierobežojumus;




Iepriekšējā koda fragmentā administratora lomas vai PowerUser lomas dalībnieki var piekļūt kontrollerim un darbībai SetTime, bet tikai administratora lomas dalībnieki var piekļūt Izslēgšanas darbība.

Iepriekšējā koda fragmentā administratora vai PowerUser lomu dalībnieki var izmantot kontrollera un SetTime metodes, bet tikai administratora lomas dalībnieki var izmantot metodi ShutDown.

Varat arī bloķēt kontrolieri, bet atļaut anonīmu, neautentificētu piekļuvi atsevišķām darbībām.

Varat arī bloķēt kontrolieri, bet ļaut anonīmiem lietotājiem izmantot atsevišķas metodes bez atļaujas.



Uz politiku balstītas lomu pārbaudes Uz politiku balstītas lomu pārbaudes

Lomu prasības var izteikt arī, izmantojot jauno politikas sintaksi, kur izstrādātājs reģistrē politiku startēšanas laikā kā daļu no autorizācijas pakalpojuma konfigurācijas. Parasti tas piedalās ConfigureServices() jūsu Startup.cs failā.

Lomas var iegūt arī, izmantojot jaunu politikas sintaksi, kur izstrādātāji reģistrē politiku kā daļu no autorizācijas pakalpojuma konfigurācijas startēšanas laikā. Tas parasti tiek pievienots Sartup.cs faila ConfigureServices().



Politikas tiek lietotas, izmantojot atribūta AuthorizeAttribute rekvizītu Politika;

Ieviesiet politiku, izmantojot rekvizītu Politika, kas atrodas rekvizīta AuthorizeAttribute augšpusē.



Ja prasībā vēlaties norādīt vairākas atļautās lomas, varat tās norādīt kā metodes RequireRole parametrus;

Ja pieprasījumā vēlaties norādīt vairākas lomas, varat tās norādīt kā vairākus metodes RequireRole parametrus:



viņa piemērs autorizē lietotājus, kas pieder pie lomām Administrators, PowerUser vai BackupAdministrator.

Autorizētais lietotājs šajā piemērā piederēs lomai Administrators, PowerUser vai BackupAdministrator.

Pārcelts no:Hipersaites pieteikšanās ir redzama.




Iepriekšējo:Novērsta problēma, kuras dēļ HttpContext.User.IsInRole() vienmēr atgriež false
Nākamo:TS Trūkstošais radix parametrs (radix)
 Saimnieks| Publicēts 2020-6-7 21:36:01 |


Ja vēlaties lietot tikai pēdējo funkciju, tas ir:

Pielāgotajam filtram var pievienot:


Atļaut vairākus

Šis atribūts norāda, vai mūsu pielāgotos līdzekļus var novietot vairākas reizes vienā un tajā pašā programmas entītijā.
 Saimnieks| Publicēts 2020-6-10 11:46:34 |
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com