Ich verwende CustomAuthentication, um das Wetter zu validieren. Ein Benutzer hat Zugriff auf eine bestimmte Seite < /p>
Im Moment kann meine Seite basierend auf < /p>
@attribute [Autorize]
allein < /p>
, aber ich möchte mich auf Rollen beruhigen. /> @attribute [autorize (roles = "admin")] < /p>
Wenn ich dies anwendepublic class AuthService : AuthenticationStateProvider
{
private HttpClient _client;
public AuthService(HttpClient client)
{
_client = client;
Console.WriteLine(_client.BaseAddress);
}
public override async Task GetAuthenticationStateAsync()
{
try
{
var person = System.Security.Principal.WindowsIdentity.GetCurrent()?.Name;
string temp = "personnamehere";
var userinfo = await _client.GetFromJsonAsync($"/api/BlazorAppAuthService/Users/{temp}");
if (userinfo is null)
{
return new AuthenticationState(new ClaimsPrincipal(new ClaimsIdentity()));
}
var claims = new List
{
new Claim(ClaimTypes.Name, person),
new Claim(ClaimTypes.Role, userinfo.Role.ToLower())
};
var identity = new ClaimsIdentity(claims, "Windows");
var user = new ClaimsPrincipal(identity);
foreach (var claim in claims)
{
Console.WriteLine($"{claim.Type} : {claim.Value}");
}
var authState = new AuthenticationState(user);
NotifyAuthenticationStateChanged(Task.FromResult(authState));
return authState;
// var role = await _client.GetFromJsonAsync("");
}
catch (Exception ex)
{
return new AuthenticationState(new ClaimsPrincipal(new ClaimsIdentity()));
}
}//end of function
}
< /code>
} < /p>
Ich verwende einen Temperaturwert, der in meinem DB gespeichert ist, um die Rolle zu spielen. Dies ist vorübergehend
Program.cs (Snippet von zutreffenden Zeilen)
builder.services.addauthorizationCore();
Builder.Addauthentication (negotiatiDiateds /> var app = builder.build (); < /p>
app.useAuthentication();
app.useAuthorisierung();
Jede Hilfe wäre geschätzt
Blazor benutzerdefinierte Authentifizierungszustand basierend auf Rollen unter Verwendung von Ansprüchenidentität ⇐ C#
-
- Similar Topics
- Replies
- Views
- Last post
-
-
ASP.NET-Problem mit Autorisierung und benutzerdefinierten Rollen über JWT-Token
by Anonymous » » in C# - 0 Replies
- 16 Views
-
Last post by Anonymous
-