/// <summary> /// Sets the signing credential. /// </summary> /// <returns></returns> public static IJwksBuilder IdentityServer4AutoJwksManager(this IJwksBuilder builder) { builder.Services.AddScoped <ISigningCredentialStore, IdentityServer4KeyStore>(); builder.Services.AddScoped <IValidationKeysStore, IdentityServer4KeyStore>(); return(builder); }
/// <summary> /// Sets the signing credential. /// </summary> /// <returns></returns> public static IJwksBuilder PersistKeysToDataProtection(this IJwksBuilder builder) { builder.Services.AddDataProtection(); builder.Services.AddScoped <IJsonWebKeyStore, DataProtectionStore>(); return(builder); }
/// <summary> /// Sets the signing credential. /// </summary> /// <returns></returns> public static IJwksBuilder PersistKeysInMemory(this IJwksBuilder builder) { builder.Services.AddSingleton <IJsonWebKeyStore, InMemoryStore>(); return(builder); }
/// <summary> /// Sets the signing credential. /// </summary> /// <returns></returns> public static IJwksBuilder PersistKeysToFileSystem(this IJwksBuilder builder, DirectoryInfo directory) { builder.Services.AddScoped <IJsonWebKeyStore, FileSystemStore>(provider => new FileSystemStore(directory, provider.GetService <IOptions <JwksOptions> >())); return(builder); }
/// <summary> /// Sets the signing credential. /// </summary> /// <param name="builder">The builder.</param> /// <param name="credential">The credential.</param> /// <returns></returns> public static IJwksBuilder UseJwtValidation(this IJwksBuilder builder) { builder.Services.AddSingleton <IPostConfigureOptions <JwtBearerOptions>, JwtPostConfigureOptions>(); return(builder); }
/// <summary> /// Sets the signing credential. /// </summary> /// <param name="builder">The builder.</param> /// <param name="credential">The credential.</param> /// <returns></returns> public static IJwksBuilder PersistKeysToDatabaseStore <TContext>(this IJwksBuilder builder) where TContext : DbContext, ISecurityKeyContext { builder.Services.AddScoped <IJsonWebKeyStore, DatabaseJsonWebKeyStore <TContext> >(); return(builder); }