133-st 153-st leidis selle kasulikuks Kui identiteet luuakse, võib see kuuluda ühte või mitmesse rolli, näiteks Tracy võib kuuluda administraatori ja kasutaja rollidesse, samas kui Scott võib kuuluda ainult kasutaja rolli. Kuidas neid rolle luuakse ja hallatakse, sõltub autoriseerimisprotsessi taustahoidlast. Rollid on arendajale avatud ClaimsPrincipal klassi IsInRole omaduse kaudu.
Uus identiteet võib kuuluda ühele või mitmele rollile, näiteks Tracy võib kuuluda administraatori ja kasutaja rollidesse, samas kui Scott võib kuuluda ainult kasutaja rolli. Kuidas neid rolle luuakse ja hallatakse, sõltub sellest, kuidas autoriseerimisprotsessi salvestatakse. ClaimsPrincipal klassi IsInRole meetod annab arendajatele võimaluse rolli kasutada.
Rollikontrollide lisamine Lisa rolli valideerimine
Rollipõhised autoriseerimiskontrollid on deklaratiivsed – arendaja lisab need oma koodi, kontrolleri või kontrolleri sees oleva tegevuse vastu, määrates rollid, mida praegune kasutaja peab täitma Ole liige, et pääseda ligi soovitud ressursile.
Rollipõhine autentimine on nõudepõhine, mille arendajad lisavad oma koodi, määrates rolle kontrollerile või selle sees olevatele meetoditele, täpsustades, et päringus peavad kasutajad vastama vastavatele liikmelisuse nõuetele.
Näiteks piiraks järgmine kood juurdepääsu kõigile AdministrationControlleri tegevustele kasutajatele, kes on Administraatori grupi liikmed.
Näiteks piirab järgmine kood AdministrationControlleri meetodi kasutamist ainult administraatori grupi liikmena.
Saad määrata mitu rolli komaga eraldatud nimekirjana;
Saad lisada mitu määratud rolli komadega jagatud nimekirja:
See kontroller oleks ligipääsetav ainult kasutajatele, kes kuuluvad HRManageri või finantsrolli liikmetele.
Kontroller on ligipääsetav ainult HRManageri või finantsrolli liikmetele.
Kui rakendad mitut atribuuti, peab ligipääs kasutaja olema kõigi määratud rollide liige; järgmine näide nõuab, et kasutaja peab olema nii PowerUser kui ka ControlPanelUser rolli liige.
Kui kasutad mitut atribuuti, peab ligipääsu kasutaja olema kõigi rollide liige; Järgmine näide nõuab, et kasutaja kuuluks nii PowerUser kui ka ControlPanelUser rollidesse.
Ligipääsu saab veelgi piirata, rakendades täiendavaid rolliautoriseerimise atribuute tegevuse tasemel;
Saad kasutada täiendavaid rolli autoriseerimise atribuute meetodi tasemel, et rakendada täiendavaid kasutuspiiranguid;
Eelmises koodilõigus saavad administraatori või PowerUser rolli liikmed pääseda ligi kontrollerile ja SetTime tegevusele, kuid ainult administraatori rolli liikmed pääsevad ligi ShutDown tegevus.
Eelmises koodilõigus saavad administraatori või PowerUser rolli liikmed kasutada kontrolleri ja SetTime meetodeid, kuid ainult administraatori liikmed saavad kasutada ShutDown meetodit.
Sa võid ka kontrolleri lukustada, kuid lubada anonüümset, autentimata ligipääsu üksikutele tegevustele.
Sa võid blokeerida ka kontrolleri, kuid lubada anonüümsetel kasutajatel kasutada eraldi meetodeid ilma loata.
Poliitikapõhised rollikontrollid Poliitikapõhised rollikontrollid
Rollinõudeid saab väljendada ka uue Policy süntaksi abil, kus arendaja registreerib poliitika käivitamisel osana autoriseerimisteenuse konfiguratsioonist. See osaleb tavaliselt sinu Startup.cs failis ConfigureServices() failis.
Rolle saab saavutada ka uue poliitikasüntaksi abil, kus arendajad registreerivad poliitika autoriseerimisteenuse konfiguratsiooni osana käivitamisel. See lisatakse tavaliselt Sartup.cs faili ConfigureServices().
Poliitikad rakendatakse AuthorizeAttribute atribuudi Policy omaduse abil;
Rakendage poliitika, kasutades AuthorizeAttribute omaduse peal olevat Policy omadust.
Kui soovid nõudes määrata mitu lubatud rolli, siis saad need määrata RequireRole meetodi parameetritena;
Kui soovid päringus määrata mitu rolli, saad need määrata mitme RequireRole meetodi parameetrina:
tema näide volitab kasutajaid, kes kuuluvad administraatori, PowerUser või BackupAdministraatori rollidesse.
Selle näite volitatud kasutaja kuulub administraatori, PowerUseri või BackupAdministraatori rolli.
Üleviidud:Hüperlingi sisselogimine on nähtav. |