示例#1
0
 public static IIdentityServerBuilder AddConfigurationStore(this IIdentityServerBuilder builder)
 {
     builder.AddClientStoreCache <ClientStore>();
     builder.AddResourceStoreCache <ResourceStore>();
     //builder.Services.AddTransient<IPersistedGrantStore, PersistedGrantStore>();
     return(builder);
 }
示例#2
0
        /// <summary>
        /// Adds the cache based stores for managing IdentityServer configuration.
        /// </summary>
        /// <param name="builder">The builder.</param>
        private static IIdentityServerBuilder AddCachedConfigurationStore(this IIdentityServerBuilder builder)
        {
            builder.AddInMemoryCaching();

            builder.AddClientStoreCache <ClientStore>();
            builder.AddResourceStoreCache <ResourceStore>();
            builder.AddCorsPolicyCache <CorsPolicyService>();

            return(builder);
        }
示例#3
0
        /// <summary>
        /// Configures caching for IClientStore, IResourceStore, and ICorsPolicyService with IdentityServer.
        /// </summary>
        /// <param name="builder">The builder.</param>
        /// <returns></returns>
        public static IIdentityServerBuilder AddConfigurationStoreCache(this IIdentityServerBuilder builder)
        {
            builder.AddInMemoryCaching();

            // add the caching decorators
            builder.AddClientStoreCache <ClientStore>();
            builder.AddResourceStoreCache <ResourceStore>();
            builder.AddCorsPolicyCache <CorsPolicyService>();

            return(builder);
        }
示例#4
0
        public static IIdentityServerBuilder AddRavenDbConfigurationStoreCache(
            this IIdentityServerBuilder builder)
        {
            CheckAddConfigurationStoreHolderWasCalled(builder.Services);

            builder.AddInMemoryCaching();

            builder.AddClientStoreCache <ClientStore>();
            builder.AddResourceStoreCache <ResourceStore>();
            builder.AddCorsPolicyCache <CorsPolicyService>();

            return(builder);
        }
        public static IIdentityServerBuilder AddConfigurationStoreCache(this IIdentityServerBuilder builder)
        {
            builder.AddInMemoryCaching();

            // these need to be registered as concrete classes in DI for
            // the caching decorators to work
            builder.Services.AddTransient <ClientStore>();
            builder.Services.AddTransient <ResourceStore>();

            // add the caching decorators
            builder.AddClientStoreCache <ClientStore>();
            builder.AddResourceStoreCache <ResourceStore>();

            return(builder);
        }
示例#6
0
        public static IIdentityServerBuilder AddConfigurationStoreCache(
            this IIdentityServerBuilder builder)
        {
            builder.Services.AddMemoryCache(); // TODO: remove once update idsvr since it does this
            builder.AddInMemoryCaching();

            // these need to be registered as concrete classes in DI for
            // the caching decorators to work
            builder.Services.AddTransient <ClientStore>();
            builder.Services.AddTransient <ScopeStore>();

            // add the caching decorators
            builder.AddClientStoreCache <ClientStore>();
            builder.AddScopeStoreCache <ScopeStore>();

            return(builder);
        }
示例#7
0
        public static IIdentityServerBuilder AddDapperStore(this IIdentityServerBuilder builder, Action <DapperStoreOptions> options = null)
        {
            var opts = new DapperStoreOptions();

            builder.Services.AddSingleton(opts);
            options?.Invoke(opts);

            builder.AddClientStore <ClientStore>();
            builder.AddResourceStore <ResourceStore>();
            builder.AddCorsPolicyService <CorsPolicyService>();

            builder.AddInMemoryCaching();
            builder.AddClientStoreCache <ClientStore>();
            builder.AddResourceStoreCache <ResourceStore>();
            builder.AddCorsPolicyCache <CorsPolicyService>();

            builder.Services.AddTransient <IPersistedGrantStore, PersistedGrantStore>();
            builder.Services.AddTransient <IDeviceFlowStore, DeviceFlowStore>();

            builder.Services.AddSingleton <TokenCleanup>();
            builder.Services.AddSingleton <IHostedService, TokenCleanupHostedService>();

            return(builder);
        }
 public static IIdentityServerBuilder AddEntityFrameworkClientStore(
     this IIdentityServerBuilder builder)
 {
     return(builder.AddClientStoreCache <EntityFrameworkClientStore>());
 }