Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 31277|Svar: 2

[Källa] Rollbaserad auktorisation

[Kopiera länk]
Publicerad den 2020-6-7 21:25:56 | | |
133 av 153 personer tyckte att detta var hjälpsamt
När en identitet skapas kan den tillhöra en eller flera roller, till exempel kan Tracy tillhöra administratörs- och användarrollerna medan Scott endast kan tillhöra användarrollen. Hur dessa roller skapas och hanteras beror på vilken bakgrund som finns i auktoriseringsprocessen. Roller exponeras för utvecklaren via egenskapen IsInRole på ClaimsPrincipal-klassen.

Den nya identiteten kan tillhöra en eller flera roller, till exempel kan Tracy tillhöra Administratörs- och Användarrollerna, och medan Scott kan tillhöra endast Användarrollen. Hur dessa roller skapas och hanteras beror på hur auktoriseringsprocessen lagras. IsInRole-metoden i ClaimsPrincipal-klassen ger utvecklare hur de kan använda rollen.

Tilläggsroll kontrollerar Lägg till rollvalidering

Rollbaserade auktoriseringskontroller är deklarativa – utvecklaren bäddar in dem i sin kod, mot en controller eller en åtgärd inom controllern, och specificerar roller som den nuvarande användaren måste Var medlem i för att få tillgång till den efterfrågade resursen.

Rollbaserad autentisering är claim-baserad, där utvecklare bäddar in i sin kod, tilldelar roller till en controller eller metoder inom den, och specificerar att användare i en förfrågan måste uppfylla motsvarande medlemskapskrav.

Till exempel skulle följande kod begränsa åtkomsten till alla åtgärder på AdministrationController till användare som är medlemmar i Administratörsgruppen.

Till exempel kommer följande kod att begränsa alla metoder i AdministrationController till att endast användas genom att vara medlem i Administratörsgruppen.



Du kan ange flera roller som en komma-separerad lista;

Du kan lägga till flera tilldelade roller i en komma-split-lista:



Denna controller skulle endast vara tillgänglig för användare som är medlemmar i HRManager-rollen eller Finansrollen.

Controllern kommer endast att vara tillgänglig för medlemmar i HRManager-rollen eller Finansrollen.

Om du använder flera attribut måste en åtkomstanvändare vara medlem i alla angivna roller; följande exempel kräver att en användare måste vara medlem i både PowerUser- och ControlPanelUser-rollen.

Om du använder flera attribut måste åtkomstanvändaren vara medlem i alla roller; Följande exempel kräver att en användare är medlem i både PowerUser- och ControlPanelUser-rollerna.



Du kan ytterligare begränsa åtkomsten genom att tillämpa ytterligare rollauktorisationsattribut på åtgärdsnivå;

Du kan använda ytterligare rollauktorisationsattribut på metodnivå för att tillämpa ytterligare användningsbegränsningar;




I den tidigare kodbiten kan medlemmar av Administratörsrollen eller PowerUser-rollen komma åt kontrollern och SetTime-åtgärden, men endast medlemmar i Administratörsrollen kan komma åt Stäng av-åtgärden.

I föregående kodutdrag kan medlemmar i Administratör- eller PowerUser-rollerna använda kontroller- och SetTime-metoderna, men endast medlemmar i administratörsrollen kan använda ShutDown-metoden.

Du kan också låsa en kontroller men tillåta anonym, oautentiserad åtkomst till enskilda handlingar.

Du kan också blockera en controller, men tillåta anonyma användare att använda separata metoder utan tillstånd.



Policybaserade rollkontroller Policybaserade rollkontroller

Rollkrav kan också uttryckas med den nya policysyntaxen, där en utvecklare registrerar en policy vid uppstart som en del av konfigurationen av auktorisationstjänsten. Detta sker normalt i ConfigureServices() i din Startup.cs fil.

Roller kan också uppnås genom att använda en ny policysyntax, där utvecklare registrerar en policy som en del av konfigurationen av auktorisationstjänsten vid uppstart. Detta läggs vanligtvis till i Sartup.cs filens ConfigureServices().



Policyer tillämpas med policyegenskapen på attributet AuthorizeAttribut;

Implementera policyn genom att använda policyegenskapen ovanpå egenskapen AuthorizeAttribut.



Om du vill specificera flera tillåtna roller i ett krav kan du ange dem som parametrar i RequireRole-metoden;

Om du vill specificera flera roller i en förfrågan kan du ange dem som flera parametrar i RequireRole-metoden:



hans exempel auktoriserar användare som tillhör rollerna Administratör, PowerUser eller BackupAdministrator.

Den auktoriserade användaren i detta exempel tillhör rollen Administratör, PowerUser eller BackupAdministrator.

Överförd från:Inloggningen med hyperlänken är synlig.




Föregående:Löste problemet där HttpContext.User.IsInRole() alltid returnerar false
Nästa:TS Saknad radixparameter (radix)
 Hyresvärd| Publicerad den 2020-6-7 21:36:01 |


Om du vill tillämpa endast den sista funktionen, det vill säga:

Du kan lägga till följande i det anpassade filtret:


Tillåt flera

Denna egenskap markerar om våra anpassade funktioner kan placeras flera gånger före samma programentitet.
 Hyresvärd| Publicerad den 2020-6-10 11:46:34 |
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com