using MyCore.Interfaces.Models; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace MyCore.Service { internal static class Security { public const string Scope = "MyCore-api"; /// /// Permissions /// private class Permissions { /// /// Dpos admin access /// public const string Admin = "MyCore.admin"; } /// /// Custom claims types /// public class ClaimTypes { public const string Permission = "Permission"; } /// /// Permissions for each type of profile /// public static readonly Dictionary ProfilesConfiguration = new Dictionary() { // An admin has access to everything //{ typeof(AdminProfile), new[] { Permissions.Admin} }, }; /// /// Policies names /// public class Policies { /// /// Administration /// public const string Admin = "MyCore.Administration"; } /// /// Policies /// public static readonly Policy[] PoliciesConfiguration = new[] { new Policy() { Name = Policies.Admin, Claims = new[] { Permissions.Admin} } }; } }