2026-10-01 08:05:56 +02:00
|
|
|
using Microsoft.AspNetCore.Authorization;
|
2023-02-18 08:52:17 +01:00
|
|
|
|
2023-02-19 00:43:43 +01:00
|
|
|
using PrivaPub.ClientModels;
|
2023-02-18 08:52:17 +01:00
|
|
|
|
2023-02-19 00:43:43 +01:00
|
|
|
namespace PrivaPub.Extensions
|
2023-02-18 08:52:17 +01:00
|
|
|
{
|
|
|
|
|
public static class Extensions
|
|
|
|
|
{
|
|
|
|
|
public static AuthorizationPolicy IsAdminPolicy() =>
|
|
|
|
|
new AuthorizationPolicyBuilder().RequireAuthenticatedUser()
|
|
|
|
|
.RequireClaim(Policies.IsAdmin, true.ToString().ToLower())
|
|
|
|
|
.RequireClaim(Policies.IsUser, true.ToString().ToLower())
|
|
|
|
|
.RequireClaim(Policies.IsModerator, true.ToString().ToLower())
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
public static AuthorizationPolicy IsUserPolicy() =>
|
|
|
|
|
new AuthorizationPolicyBuilder().RequireAuthenticatedUser()
|
|
|
|
|
.RequireClaim(Policies.IsUser, true.ToString().ToLower())
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
public static AuthorizationPolicy IsModeratorPolicy() =>
|
|
|
|
|
new AuthorizationPolicyBuilder().RequireAuthenticatedUser()
|
|
|
|
|
.RequireClaim(Policies.IsUser, true.ToString().ToLower())
|
|
|
|
|
.RequireClaim(Policies.IsModerator, true.ToString().ToLower())
|
|
|
|
|
.Build();
|
|
|
|
|
}
|
|
|
|
|
}
|