コード例 #1
0
        /// <summary>
        /// Adds Identity support for Umbraco back office
        /// </summary>
        public static IUmbracoBuilder AddBackOfficeIdentity(this IUmbracoBuilder builder)
        {
            IServiceCollection services = builder.Services;

            services.AddDataProtection();

            builder.BuildUmbracoBackOfficeIdentity()
            .AddDefaultTokenProviders()
            .AddUserStore <IUserStore <BackOfficeIdentityUser>, BackOfficeUserStore>(factory => new BackOfficeUserStore(
                                                                                         factory.GetRequiredService <IScopeProvider>(),
                                                                                         factory.GetRequiredService <IUserService>(),
                                                                                         factory.GetRequiredService <IEntityService>(),
                                                                                         factory.GetRequiredService <IExternalLoginWithKeyService>(),
                                                                                         factory.GetRequiredService <IOptionsSnapshot <GlobalSettings> >(),
                                                                                         factory.GetRequiredService <IUmbracoMapper>(),
                                                                                         factory.GetRequiredService <BackOfficeErrorDescriber>(),
                                                                                         factory.GetRequiredService <AppCaches>()
                                                                                         ))
            .AddUserManager <IBackOfficeUserManager, BackOfficeUserManager>()
            .AddSignInManager <IBackOfficeSignInManager, BackOfficeSignInManager>()
            .AddClaimsPrincipalFactory <BackOfficeClaimsPrincipalFactory>()
            .AddErrorDescriber <BackOfficeErrorDescriber>();

            services.TryAddSingleton <IBackOfficeUserPasswordChecker, NoopBackOfficeUserPasswordChecker>();

            // Configure the options specifically for the UmbracoBackOfficeIdentityOptions instance
            services.ConfigureOptions <ConfigureBackOfficeIdentityOptions>();
            services.ConfigureOptions <ConfigureBackOfficeSecurityStampValidatorOptions>();

            return(builder);
        }
コード例 #2
0
        /// <summary>
        /// Adds Identity support for Umbraco back office
        /// </summary>
        public static IUmbracoBuilder AddBackOfficeIdentity(this IUmbracoBuilder builder)
        {
            IServiceCollection services = builder.Services;

            services.AddDataProtection();

            builder.BuildUmbracoBackOfficeIdentity()
            .AddDefaultTokenProviders()
            .AddUserStore <BackOfficeUserStore>()
            .AddUserManager <IBackOfficeUserManager, BackOfficeUserManager>()
            .AddSignInManager <IBackOfficeSignInManager, BackOfficeSignInManager>()
            .AddClaimsPrincipalFactory <BackOfficeClaimsPrincipalFactory>()
            .AddErrorDescriber <BackOfficeErrorDescriber>();

            services.TryAddSingleton <IBackOfficeUserPasswordChecker, NoopBackOfficeUserPasswordChecker>();

            // Configure the options specifically for the UmbracoBackOfficeIdentityOptions instance
            services.ConfigureOptions <ConfigureBackOfficeIdentityOptions>();
            services.ConfigureOptions <ConfigureBackOfficeSecurityStampValidatorOptions>();

            return(builder);
        }