public static IPolicyServerBuilder AddConfigurationStore <TContext>(
            this IPolicyServerBuilder builder,
            Action <clientStoreOptions> storeOptionsAction = null
            ) where TContext : DbContext, IPolicyDbContext
        {
            builder.Services.AddPolicyDbContext <TContext>(storeOptionsAction);

            builder.AddClientStore <ClientStore>();
            builder.AddPolicyStore <PolicyStore>();
            builder.AddPermissionStore <PermissionStore>();
            builder.AddRoleStore <RoleStore>();


            return(builder);
        }
Example #2
0
        public static IPolicyServerBuilder AddInMemoryPolicies(this IPolicyServerBuilder builder, IEnumerable <Client> clients)
        {
            builder.Services.AddSingleton(clients);

            builder.AddClientStore <InMemoryClientStore>();

            //var existingCors = builder.Services.Where(x => x.ServiceType == typeof(ICorsPolicyService)).LastOrDefault();
            //if (existingCors != null &&
            //    existingCors.ImplementationType == typeof(DefaultCorsPolicyService) &&
            //    existingCors.Lifetime == ServiceLifetime.Transient) {
            //    // if our default is registered, then overwrite with the InMemoryCorsPolicyService
            //    // otherwise don't overwrite with the InMemoryCorsPolicyService, which uses the custom one registered by the host
            //    builder.Services.AddTransient<ICorsPolicyService, InMemoryCorsPolicyService>();
            //}

            return(builder);
        }