Exemple #1
0
        /// <summary>
        /// Configure Default Identity User Manager for Umbraco
        /// </summary>
        /// <param name="app"></param>
        /// <param name="services"></param>
        /// <param name="contentSettings"></param>
        /// <param name="globalSettings"></param>
        /// <param name="userMembershipProvider"></param>
        public static void ConfigureUserManagerForUmbracoBackOffice(this IAppBuilder app,
                                                                    ServiceContext services,
                                                                    IContentSection contentSettings,
                                                                    IGlobalSettings globalSettings,
                                                                    MembershipProviderBase userMembershipProvider)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }
            if (userMembershipProvider == null)
            {
                throw new ArgumentNullException(nameof(userMembershipProvider));
            }

            //Configure Umbraco user manager to be created per request
            app.CreatePerOwinContext <BackOfficeUserManager>(
                (options, owinContext) => BackOfficeUserManager.Create(
                    options,
                    services.UserService,
                    services.MemberTypeService,
                    services.EntityService,
                    services.ExternalLoginService,
                    userMembershipProvider,
                    contentSettings,
                    globalSettings));

            app.SetBackOfficeUserManagerType <BackOfficeUserManager, BackOfficeIdentityUser>();

            //Create a sign in manager per request
            app.CreatePerOwinContext <BackOfficeSignInManager>((options, context) => BackOfficeSignInManager.Create(options, context, globalSettings, app.CreateLogger <BackOfficeSignInManager>()));
        }
Exemple #2
0
        /// <summary>
        /// Configure a custom UserStore with the Identity User Manager for Umbraco
        /// </summary>
        /// <param name="app"></param>
        /// <param name="runtimeState"></param>
        /// <param name="globalSettings"></param>
        /// <param name="userMembershipProvider"></param>
        /// <param name="customUserStore"></param>
        /// <param name="contentSettings"></param>
        public static void ConfigureUserManagerForUmbracoBackOffice(this IAppBuilder app,
                                                                    IRuntimeState runtimeState,
                                                                    IContentSection contentSettings,
                                                                    IGlobalSettings globalSettings,
                                                                    MembershipProviderBase userMembershipProvider,
                                                                    BackOfficeUserStore customUserStore)
        {
            if (runtimeState == null)
            {
                throw new ArgumentNullException(nameof(runtimeState));
            }
            if (userMembershipProvider == null)
            {
                throw new ArgumentNullException(nameof(userMembershipProvider));
            }
            if (customUserStore == null)
            {
                throw new ArgumentNullException(nameof(customUserStore));
            }

            //Configure Umbraco user manager to be created per request
            app.CreatePerOwinContext <BackOfficeUserManager>(
                (options, owinContext) => BackOfficeUserManager.Create(
                    options,
                    customUserStore,
                    userMembershipProvider,
                    contentSettings));

            app.SetBackOfficeUserManagerType <BackOfficeUserManager, BackOfficeIdentityUser>();

            //Create a sign in manager per request
            app.CreatePerOwinContext <BackOfficeSignInManager>((options, context) => BackOfficeSignInManager.Create(options, context, globalSettings, app.CreateLogger(typeof(BackOfficeSignInManager).FullName)));
        }
Exemple #3
0
        /// <summary>
        /// Configure a custom BackOfficeUserManager for Umbraco
        /// </summary>
        /// <param name="app"></param>
        /// <param name="runtimeState"></param>
        /// <param name="globalSettings"></param>
        /// <param name="userManager"></param>
        public static void ConfigureUserManagerForUmbracoBackOffice <TManager, TUser>(this IAppBuilder app,
                                                                                      IRuntimeState runtimeState,
                                                                                      IGlobalSettings globalSettings,
                                                                                      Func <IdentityFactoryOptions <TManager>, IOwinContext, TManager> userManager)
            where TManager : BackOfficeUserManager <TUser>
            where TUser : BackOfficeIdentityUser
        {
            if (runtimeState == null)
            {
                throw new ArgumentNullException(nameof(runtimeState));
            }
            if (userManager == null)
            {
                throw new ArgumentNullException(nameof(userManager));
            }

            //Configure Umbraco user manager to be created per request
            app.CreatePerOwinContext <TManager>(userManager);

            app.SetBackOfficeUserManagerType <TManager, TUser>();

            //Create a sign in manager per request
            app.CreatePerOwinContext <BackOfficeSignInManager>(
                (options, context) => BackOfficeSignInManager.Create(options, context, globalSettings, app.CreateLogger(typeof(BackOfficeSignInManager).FullName)));
        }