public MultiTenantOAuthOptionsResolver(
     ISiteResolver siteResolver,
     MultiTenantOptions multiTenantOptions)
 {
     this.siteResolver = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
 }
 public FolderTenantNodeUrlPrefixProvider(
     ISiteResolver siteResolver,
     IOptions<MultiTenantOptions> multiTenantOptions)
 {
     this.siteResolver = siteResolver;
     options = multiTenantOptions.Value;
 }
Exemplo n.º 3
0
 public SiteUserManager(
     ISiteResolver siteResolver,
     IUserRepository userRepository,
     IUserStore <TUser> store,
     IOptions <IdentityOptions> optionsAccessor,
     IOptions <MultiTenantOptions> multiTenantOptionsAccessor,
     IPasswordHasher <TUser> passwordHasher,
     IEnumerable <IUserValidator <TUser> > userValidators,
     IEnumerable <IPasswordValidator <TUser> > passwordValidators,
     ILookupNormalizer keyNormalizer,
     IdentityErrorDescriber errors,
     IServiceProvider serviceProvider,
     ILogger <UserManager <TUser> > logger,
     IHttpContextAccessor contextAccessor)
     : base(
         store,
         optionsAccessor,
         passwordHasher,
         userValidators,
         passwordValidators,
         keyNormalizer,
         errors,
         serviceProvider,
         logger,
         contextAccessor)
 {
     userRepo             = userRepository;
     this.siteResolver    = siteResolver;
     multiTenantOptions   = multiTenantOptionsAccessor.Value;
     this.contextAccessor = contextAccessor;
     _context             = contextAccessor?.HttpContext;
 }
        /// <summary>
        /// Initializes a new <see cref="MicrosoftAccountAuthenticationMiddleware"/>.
        /// </summary>
        /// <param name="next">The next middleware in the HTTP pipeline to invoke.</param>
        /// <param name="dataProtectionProvider"></param>
        /// <param name="loggerFactory"></param>
        /// <param name="encoder"></param>
        /// <param name="sharedOptions"></param>
        /// <param name="options">Configuration options for the middleware.</param>
        /// <param name="configureOptions"></param>
        public MultiTenantMicrosoftAccountMiddleware(
            RequestDelegate next,
            IDataProtectionProvider dataProtectionProvider,
            ILoggerFactory loggerFactory,
            ISiteResolver siteResolver,
            ISiteRepository siteRepository,
            IOptions <MultiTenantOptions> multiTenantOptionsAccesor,
            IUrlEncoder encoder,
            IOptions <SharedAuthenticationOptions> sharedOptions,
            MicrosoftAccountOptions options)
            : base(
                next,
                dataProtectionProvider,
                loggerFactory,
                encoder,
                siteResolver,
                multiTenantOptionsAccesor,
                sharedOptions,
                options)
        {
            if (Options.Scope.Count == 0)
            {
                // LiveID requires a scope string, so if the user didn't set one we go for the least possible.
                // TODO: Should we just add these by default when we create the Options?
                Options.Scope.Add("wl.basic");
            }

            this.loggerFactory = loggerFactory;
            this.siteResolver  = siteResolver;
            multiTenantOptions = multiTenantOptionsAccesor.Value;
            siteRepo           = siteRepository;
        }
Exemplo n.º 5
0
        public SiteRoleManager(
            ISiteResolver siteResolver,
            IUserRepository userRepository,
            IRoleStore <TRole> roleStore,
            IEnumerable <IRoleValidator <TRole> > roleValidators,
            ILookupNormalizer keyNormalizer,
            IdentityErrorDescriber errors,
            ILogger <RoleManager <TRole> > logger,
            IHttpContextAccessor contextAccessor
            ) : base(
                roleStore,
                roleValidators,
                new UseOriginalLookupNormalizer(), //bypass the uppercasenormalizer passed in
                errors,
                logger,
                contextAccessor)
        {
            if (siteResolver == null)
            {
                throw new ArgumentNullException(nameof(siteResolver));
            }
            if (userRepository == null)
            {
                throw new ArgumentNullException(nameof(userRepository));
            }
            if (roleStore == null)
            {
                throw new ArgumentNullException(nameof(roleStore));
            }

            this.siteResolver = siteResolver;
            userRepo          = userRepository;
            this.logger       = logger;
        }
 public MultiTenantFacebookMiddleware(
     RequestDelegate next,
     IDataProtectionProvider dataProtectionProvider,
     ILoggerFactory loggerFactory,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     IOptions <MultiTenantOptions> multiTenantOptionsAccesor,
     IUrlEncoder encoder,
     IOptions <SharedAuthenticationOptions> sharedOptions,
     FacebookOptions options)
     : base(next,
            dataProtectionProvider,
            loggerFactory,
            encoder,
            siteResolver,
            multiTenantOptionsAccesor,
            sharedOptions,
            options)
 {
     //if (string.IsNullOrEmpty(Options.AppId))
     //{
     //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.AppId)));
     //}
     //if (string.IsNullOrEmpty(Options.AppSecret))
     //{
     //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.AppSecret)));
     //}
     this.loggerFactory = loggerFactory;
     this.siteResolver  = siteResolver;
     multiTenantOptions = multiTenantOptionsAccesor.Value;
     siteRepo           = siteRepository;
 }
Exemplo n.º 7
0
        public TenantLayoutSelector(
            IRazorViewEngine viewEngine,
            ISiteResolver siteResolver,
            IOptions <LayoutSelectorOptions> layoutOptionsAccesor,
            ILogger <TenantLayoutSelector> logger)
        {
            if (viewEngine == null)
            {
                throw new ArgumentNullException(nameof(viewEngine));
            }
            if (siteResolver == null)
            {
                throw new ArgumentNullException(nameof(siteResolver));
            }
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (layoutOptionsAccesor == null)
            {
                throw new ArgumentNullException(nameof(layoutOptionsAccesor));
            }

            this.viewEngine   = viewEngine;
            this.siteResolver = siteResolver;
            options           = layoutOptionsAccesor.Options;
            log = logger;
        }
 public MultiTenantOAuthOptionsResolver(
     ISiteResolver siteResolver,
     MultiTenantOptions multiTenantOptions)
 {
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
 }
        /// <summary>
        /// Initializes a new <see cref="GoogleAuthenticationMiddleware"/>.
        /// </summary>
        /// <param name="next">The next middleware in the HTTP pipeline to invoke.</param>
        /// <param name="dataProtectionProvider"></param>
        /// <param name="loggerFactory"></param>
        /// <param name="encoder"></param>
        /// <param name="sharedOptions"></param>
        /// <param name="options">Configuration options for the middleware.</param>
        /// <param name="configureOptions"></param>
        public MultiTenantGoogleMiddleware(
            RequestDelegate next,
            IDataProtectionProvider dataProtectionProvider,
            ILoggerFactory loggerFactory,
            ISiteResolver siteResolver,
            ISiteRepository siteRepository,
            IOptions <MultiTenantOptions> multiTenantOptionsAccesor,
            IUrlEncoder encoder,
            IOptions <SharedAuthenticationOptions> sharedOptions,
            GoogleOptions options)
            : base(
                next,
                dataProtectionProvider,
                loggerFactory,
                encoder,
                siteResolver,
                multiTenantOptionsAccesor,
                sharedOptions,
                options)
        {
            if (Options.Scope.Count == 0)
            {
                // Google OAuth 2.0 asks for non-empty scope. If user didn't set it, set default scope to
                // "openid profile email" to get basic user information.
                // TODO: Should we just add these by default when we create the Options?
                Options.Scope.Add("openid");
                Options.Scope.Add("profile");
                Options.Scope.Add("email");
            }

            this.loggerFactory = loggerFactory;
            this.siteResolver  = siteResolver;
            multiTenantOptions = multiTenantOptionsAccesor.Value;
            siteRepo           = siteRepository;
        }
Exemplo n.º 10
0
        public UserStore(
            ILogger <UserStore <TUser> > logger,
            ISiteResolver siteResolver,
            IUserRepository userRepository,
            //ConfigHelper config,
            IOptions <MultiTenantOptions> multiTenantOptionsAccessor
            )
        {
            log = logger;

            if (siteResolver == null)
            {
                throw new ArgumentNullException(nameof(siteResolver));
            }
            resolver = siteResolver;

            if (userRepository == null)
            {
                throw new ArgumentNullException(nameof(userRepository));
            }
            repo = userRepository;


            multiTenantOptions = multiTenantOptionsAccessor.Value;

            //debugLog = config.GetOrDefault("AppSettings:UserStoreDebugEnabled", false);

            if (debugLog)
            {
                log.LogInformation("constructor");
            }
        }
Exemplo n.º 11
0
 public SiteUserManager(
     ISiteResolver siteResolver,
     IUserRepository userRepository,
     IUserStore <TUser> store,
     IOptions <IdentityOptions> optionsAccessor,
     IPasswordHasher <TUser> passwordHasher,
     IEnumerable <IUserValidator <TUser> > userValidators,
     IEnumerable <IPasswordValidator <TUser> > passwordValidators,
     ILookupNormalizer keyNormalizer,
     IdentityErrorDescriber errors,
     IEnumerable <IUserTokenProvider <TUser> > tokenProviders,
     ILogger <UserManager <TUser> > logger,
     IHttpContextAccessor contextAccessor)
     : base(
         store,
         optionsAccessor,
         passwordHasher,
         userValidators,
         passwordValidators,
         keyNormalizer,
         errors,
         tokenProviders,
         logger,
         contextAccessor)
 {
     userRepo          = userRepository;
     this.siteResolver = siteResolver;
 }
Exemplo n.º 12
0
        //private string requiredSiteFolder;

        //public SiteFolderRouteConstraint(string folderParam)
        //{
        //    requiredSiteFolder = folderParam;
        //}

        public bool Match(
            HttpContext httpContext,
            IRouter route,
            string parameterName,
            IDictionary <string, object> values,
            RouteDirection routeDirection)
        {
            string requestFolder = RequestSiteResolver.GetFirstFolderSegment(httpContext.Request.Path);
            //return string.Equals(requiredSiteFolder, requestFolder, StringComparison.CurrentCultureIgnoreCase);
            ISiteResolver siteResolver = httpContext.ApplicationServices.GetService <ISiteResolver>();

            if (siteResolver != null)
            {
                try
                {
                    // exceptions expected here until db install scripts have run or if db connection error
                    ISiteSettings site = siteResolver.Resolve();
                    if ((site != null) && (site.SiteFolderName == requestFolder))
                    {
                        return(true);
                    }
                }
                catch
                {
                    // do we need to log this?
                }
            }

            return(false);
        }
Exemplo n.º 13
0
 public FolderTenantNodeUrlPrefixProvider(
     ISiteResolver siteResolver,
     IOptions <MultiTenantOptions> multiTenantOptions)
 {
     this.siteResolver = siteResolver;
     options           = multiTenantOptions.Options;
 }
        /// <summary>
        /// Initializes a <see cref="TwitterAuthenticationMiddleware"/>
        /// </summary>
        /// <param name="next">The next middleware in the HTTP pipeline to invoke</param>
        /// <param name="dataProtectionProvider"></param>
        /// <param name="loggerFactory"></param>
        /// <param name="encoder"></param>
        /// <param name="sharedOptions"></param>
        /// <param name="options">Configuration options for the middleware</param>
        /// <param name="configureOptions"></param>
        public MultiTenantTwitterAuthenticationMiddleware(
            RequestDelegate next,
            IDataProtectionProvider dataProtectionProvider,
            ILoggerFactory loggerFactory,
            ISiteResolver siteResolver,
            ISiteRepository siteRepository,
            IOptions<MultiTenantOptions> multiTenantOptionsAccesor,
            IUrlEncoder encoder,
            IOptions<SharedAuthenticationOptions> sharedOptions,
            IOptions<TwitterAuthenticationOptions> options,
            ConfigureOptions<TwitterAuthenticationOptions> configureOptions = null)
            : base(next, options, loggerFactory, encoder, configureOptions)
        {
            //if (string.IsNullOrEmpty(Options.ConsumerSecret))
                //{
                //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.ConsumerSecret)));
                //}
                //if (string.IsNullOrEmpty(Options.ConsumerKey))
                //{
                //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.ConsumerKey)));
                //}

                if (Options.Notifications == null)
                {
                    Options.Notifications = new TwitterAuthenticationNotifications();
                }
                if (Options.StateDataFormat == null)
                {
                    var dataProtector = dataProtectionProvider.CreateProtector(
                        typeof(TwitterAuthenticationMiddleware).FullName, Options.AuthenticationScheme, "v1");
                    Options.StateDataFormat = new SecureDataFormat<RequestToken>(
                        Serializers.RequestToken,
                        dataProtector,
                        TextEncodings.Base64Url);
                }

                if (string.IsNullOrEmpty(Options.SignInScheme))
                {
                    Options.SignInScheme = sharedOptions.Options.SignInScheme;
                }
                if (string.IsNullOrEmpty(Options.SignInScheme))
                {
                    //throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, "SignInScheme"));
                    throw new ArgumentException("Resources.Exception_OptionMustBeProvided, SignInScheme");

                }

                _httpClient = new HttpClient(ResolveHttpMessageHandler(Options));
                _httpClient.Timeout = Options.BackchannelTimeout;
                _httpClient.MaxResponseContentBufferSize = 1024 * 1024 * 10; // 10 MB
                _httpClient.DefaultRequestHeaders.Accept.ParseAdd("*/*");
                _httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Microsoft ASP.NET Twitter middleware");
                _httpClient.DefaultRequestHeaders.ExpectContinue = false;

                this.loggerFactory = loggerFactory;
                this.siteResolver = siteResolver;
                multiTenantOptions = multiTenantOptionsAccesor.Options;
                siteRepo = siteRepository;
        }
        //https://github.com/aspnet/Security/blob/dev/src/Microsoft.AspNet.Authentication/AuthenticationMiddleware.cs

        /// <summary>
        /// Initializes a new <see cref="OAuthAuthenticationMiddleware"/>.
        /// </summary>
        /// <param name="next">The next middleware in the HTTP pipeline to invoke.</param>
        /// <param name="dataProtectionProvider"></param>
        /// <param name="loggerFactory"></param>
        /// <param name="options">Configuration options for the middleware.</param>
        public MultiTenantOAuthMiddleware(
            RequestDelegate next,
            IDataProtectionProvider dataProtectionProvider,
            ILoggerFactory loggerFactory,
            IUrlEncoder encoder,
            ISiteResolver siteResolver,
            IOptions<MultiTenantOptions> multiTenantOptionsAccesor,
            IOptions<SharedAuthenticationOptions> sharedOptions,
            TOptions options)
            : base(next, options, loggerFactory, encoder)
        {
            
            //if (string.IsNullOrEmpty(Options.AuthenticationScheme))
            //{
            //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.AuthenticationScheme)));
            //}

            //if (string.IsNullOrEmpty(Options.ClientId))
            //{
            //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.ClientId)));
            //}

            //if (string.IsNullOrEmpty(Options.ClientSecret))
            //{
            //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.ClientSecret)));
            //}

            //if (string.IsNullOrEmpty(Options.AuthorizationEndpoint))
            //{
            //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.AuthorizationEndpoint)));
            //}

            //if (string.IsNullOrEmpty(Options.TokenEndpoint))
            //{
            //    throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Resources.Exception_OptionMustBeProvided, nameof(Options.TokenEndpoint)));
            //}

            if (Options.StateDataFormat == null)
            {
                var dataProtector = dataProtectionProvider.CreateProtector(
                    GetType().FullName, Options.AuthenticationScheme, "v1");
                Options.StateDataFormat = new PropertiesDataFormat(dataProtector);
            }

            //Backchannel = new HttpClient(ResolveHttpMessageHandler(Options));
            Backchannel = new HttpClient(Options.BackchannelHttpHandler ?? new HttpClientHandler());
            Backchannel.DefaultRequestHeaders.UserAgent.ParseAdd("Microsoft ASP.NET OAuth middleware");
            Backchannel.Timeout = Options.BackchannelTimeout;
            Backchannel.MaxResponseContentBufferSize = 1024 * 1024 * 10; // 10 MB

            if (string.IsNullOrEmpty(Options.SignInScheme))
            {
                Options.SignInScheme = sharedOptions.Value.SignInScheme;
            }

            this.loggerFactory = loggerFactory;
            this.siteResolver = siteResolver;
            multiTenantOptions = multiTenantOptionsAccesor.Value;
        }
 public MultiTenantAuthCookieValidator(
     ISiteResolver siteResolver,
     ILogger <MultiTenantAuthCookieValidator> logger
     )
 {
     this.siteResolver = siteResolver;
     log = logger;
 }
 public MultiTenantAuthCookieValidator(
     ISiteResolver siteResolver,
     ILogger<MultiTenantAuthCookieValidator> logger
     )
 {
     this.siteResolver = siteResolver;
     log = logger;
 }
Exemplo n.º 18
0
 public MultiTenantCookieOptionsResolverFactory(
     ISiteResolver siteResolver,
     IOptions <MultiTenantOptions> multiTenantOptions,
     ILoggerFactory loggerFactory)
 {
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     this.loggerFactory      = loggerFactory;
 }
Exemplo n.º 19
0
 public MultiTenantCookieOptionsResolver(
     ISiteResolver siteResolver,
     IOptions <MultiTenantOptions> multiTenantOptions,
     ILoggerFactory loggerFactory)
 {
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions.Options;
     log = loggerFactory.CreateLogger <MultiTenantCookieOptionsResolver>();
 }
 public MultiTenantCookieOptionsResolverFactory(
     ISiteResolver siteResolver,
     IOptions<MultiTenantOptions> multiTenantOptions,
     ILoggerFactory loggerFactory)
 {
     this.siteResolver = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     this.loggerFactory = loggerFactory;
 }
 public RequestTimeZoneResolver(
     IHttpContextAccessor contextAccessor,
     ISiteResolver siteResolver,
     SiteUserManager <SiteUser> userManager
     )
 {
     this.contextAccessor = contextAccessor;
     this.siteResolver    = siteResolver;
     this.userManager     = userManager;
 }
Exemplo n.º 22
0
 public CoreDataController(
     ISiteResolver siteResolver,
     GeoDataManager geoDataManager,
     IOptions <UIOptions> uiOptionsAccessor
     )
 {
     Site        = siteResolver.Resolve();
     dataManager = geoDataManager;
     uiOptions   = uiOptionsAccessor.Value;
 }
Exemplo n.º 23
0
 public RequestTimeZoneResolver(
     IHttpContextAccessor contextAccessor,
     ISiteResolver siteResolver,
     SiteUserManager<SiteUser> userManager
     )
 {
     this.contextAccessor = contextAccessor;
     this.siteResolver = siteResolver;
     this.userManager = userManager;
 }
 public MultiTenantAuthCookieValidator(
     ISiteResolver siteResolver,
     ISecurityStampValidator securityStampValidator,
     ILogger<MultiTenantAuthCookieValidator> logger
     )
 {
     this.securityStampValidator = securityStampValidator;
     this.siteResolver = siteResolver;
     log = logger;
 }
        public MultiTenantCookieOptionsResolver(
            ISiteResolver siteResolver,
            IOptions<MultiTenantOptions> multiTenantOptions,
            ILoggerFactory loggerFactory)
        {

            this.siteResolver = siteResolver;
            this.multiTenantOptions = multiTenantOptions.Value;
            log = loggerFactory.CreateLogger<MultiTenantCookieOptionsResolver>();
        }
Exemplo n.º 26
0
 public CoreDataController(
     ISiteResolver siteResolver,
     GeoDataManager geoDataManager,
     IOptions<UIOptions> uiOptionsAccessor
     )
 {
     Site = siteResolver.Resolve();
     dataManager = geoDataManager;
     uiOptions = uiOptionsAccessor.Options;
 }
Exemplo n.º 27
0
 public MultiTenantFacebookOptionsResolver(
     FacebookOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions    = originalOptions;
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
 public MultiTenantGoogleOptionsResolver(
     GoogleOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions = originalOptions;
     this.siteResolver = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
 public MultiTenantMicrosoftOptionsResolver(
     MicrosoftAccountOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions    = originalOptions;
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
 public MultiTenantMicrosoftOptionsResolver(
     MicrosoftAccountOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions = originalOptions;
     this.siteResolver = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
Exemplo n.º 31
0
 public MultiTenantGoogleOptionsResolver(
     GoogleAuthenticationOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions    = originalOptions;
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
 public MultiTenantFacebookOptionsResolver(
     FacebookAuthenticationOptions originalOptions,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions)
 {
     this.originalOptions = originalOptions;
     this.siteResolver = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
Exemplo n.º 33
0
 public ManageController(
     ISiteResolver siteResolver,
     SiteUserManager<SiteUser> userManager,
     SiteSignInManager<SiteUser> signInManager,
     ISmsSender smsSender)
 {
     Site = siteResolver.Resolve();
     this.userManager = userManager;
     this.signInManager = signInManager;
    // this.emailSender = emailSender;
     this.smsSender = smsSender;
 }
Exemplo n.º 34
0
 public ManageController(
     ISiteResolver siteResolver,
     SiteUserManager <SiteUser> userManager,
     SiteSignInManager <SiteUser> signInManager,
     ISmsSender smsSender)
 {
     Site               = siteResolver.Resolve();
     this.userManager   = userManager;
     this.signInManager = signInManager;
     // this.emailSender = emailSender;
     this.smsSender = smsSender;
 }
Exemplo n.º 35
0
 public SiteManager(
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     IUserRepository userRepository,
     IOptions <MultiTenantOptions> multiTenantOptionsAccessor,
     IOptions <SetupOptions> setupOptionsAccessor)
 {
     resolver           = siteResolver;
     siteRepo           = siteRepository;
     userRepo           = userRepository;
     multiTenantOptions = multiTenantOptionsAccessor.Options;
     setupOptions       = setupOptionsAccessor.Options;
 }
Exemplo n.º 36
0
 public SiteManager(
     ISiteResolver siteResolver, 
     ISiteRepository siteRepository,
     IUserRepository userRepository,
     IOptions<MultiTenantOptions> multiTenantOptionsAccessor,
     IOptions<SetupOptions> setupOptionsAccessor)
 {
     resolver = siteResolver;
     siteRepo = siteRepository;
     userRepo = userRepository;
     multiTenantOptions = multiTenantOptionsAccessor.Value;
     setupOptions = setupOptionsAccessor.Value;
 }
Exemplo n.º 37
0
        public MultiTenantTwitterHandler(
            HttpClient httpClient,
            ISiteResolver siteResolver,
            ISiteRepository siteRepository,
            MultiTenantOptions multiTenantOptions,
            ILoggerFactory loggerFactory)
        {
            _httpClient = httpClient;

            log = loggerFactory.CreateLogger <MultiTenantTwitterHandler>();
            this.siteResolver       = siteResolver;
            this.multiTenantOptions = multiTenantOptions;
            siteRepo = siteRepository;
        }
Exemplo n.º 38
0
 public SiteManager(
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     IUserRepository userRepository,
     IOptions <MultiTenantOptions> multiTenantOptionsAccessor,
     IOptions <SetupOptions> setupOptionsAccessor,
     IHttpContextAccessor contextAccessor)
 {
     resolver           = siteResolver;
     siteRepo           = siteRepository;
     userRepo           = userRepository;
     multiTenantOptions = multiTenantOptionsAccessor.Value;
     setupOptions       = setupOptionsAccessor.Value;
     _context           = contextAccessor?.HttpContext;
 }
Exemplo n.º 39
0
 public AccountController(
     ISiteResolver siteResolver,
     SiteUserManager <SiteUser> userManager,
     SiteSignInManager <SiteUser> signInManager,
     ISiteMessageEmailSender emailSender,
     ISmsSender smsSender,
     ILogger <AccountController> logger)
 {
     Site               = siteResolver.Resolve();
     this.userManager   = userManager;
     this.signInManager = signInManager;
     //config = configuration;
     this.emailSender = emailSender;
     this.smsSender   = smsSender;
     log = logger;
 }
Exemplo n.º 40
0
        public TenantLayoutSelector(
            IRazorViewEngine viewEngine,
            ISiteResolver siteResolver,
            IOptions<LayoutSelectorOptions> layoutOptionsAccesor,
            ILogger<TenantLayoutSelector> logger)
        {
            if (viewEngine == null) { throw new ArgumentNullException(nameof(viewEngine)); }
            if (siteResolver == null) { throw new ArgumentNullException(nameof(siteResolver)); }
            if (logger == null) { throw new ArgumentNullException(nameof(logger)); }
            if (layoutOptionsAccesor == null) { throw new ArgumentNullException(nameof(layoutOptionsAccesor)); }

            this.viewEngine = viewEngine;
            this.siteResolver = siteResolver;
            options = layoutOptionsAccesor.Value;
            log = logger;
        }
Exemplo n.º 41
0
 public AccountController(
     ISiteResolver siteResolver,
     SiteUserManager<SiteUser> userManager,
     SiteSignInManager<SiteUser> signInManager,
     ISiteMessageEmailSender emailSender,
     ISmsSender smsSender,
     ILogger<AccountController> logger)
 {
     Site = siteResolver.Resolve();
     this.userManager = userManager;
     this.signInManager = signInManager;
     //config = configuration;
     this.emailSender = emailSender;
     this.smsSender = smsSender;
     log = logger;
 }
Exemplo n.º 42
0
 public MultiTenantGoogleHandler(
     HttpClient httpClient,
     ISiteResolver siteResolver,
     ISiteRepository siteRepository,
     MultiTenantOptions multiTenantOptions,
     ILoggerFactory loggerFactory)
     : base(
         httpClient,
         loggerFactory,
         new MultiTenantOAuthOptionsResolver(siteResolver, multiTenantOptions)
         )
 {
     log = loggerFactory.CreateLogger <MultiTenantGoogleHandler>();
     this.siteResolver       = siteResolver;
     this.multiTenantOptions = multiTenantOptions;
     siteRepo = siteRepository;
 }
Exemplo n.º 43
0
        public SiteManager(
            ISiteRepository siteRepository,
            IUserRepository userRepository,
            SiteDataProtector dataProtector,
            IHttpContextAccessor contextAccessor,
            ISiteResolver siteResolver,
            ILogger <SiteManager> logger,
            IOptions <MultiTenantOptions> multiTenantOptionsAccessor,
            IOptions <SiteConfigOptions> setupOptionsAccessor
            )
        {
            siteRepo           = siteRepository;
            userRepo           = userRepository;
            multiTenantOptions = multiTenantOptionsAccessor.Value;
            setupOptions       = setupOptionsAccessor.Value;
            _context           = contextAccessor?.HttpContext;
            this.dataProtector = dataProtector;
            log = logger;

            resolver = siteResolver;
        }
Exemplo n.º 44
0
        public SiteManager(
            ISiteRepository siteRepository,
            IUserRepository userRepository,
            SiteDataProtector dataProtector,
            IHttpContextAccessor contextAccessor,
            ISiteResolver siteResolver,
            ILogger<SiteManager> logger,
            IOptions<MultiTenantOptions> multiTenantOptionsAccessor,
            IOptions<SiteConfigOptions> setupOptionsAccessor
            )
        {
            
            siteRepo = siteRepository;
            userRepo = userRepository;
            multiTenantOptions = multiTenantOptionsAccessor.Value;
            setupOptions = setupOptionsAccessor.Value;
            _context = contextAccessor?.HttpContext;
            this.dataProtector = dataProtector;
            log = logger;

            resolver = siteResolver;
        }
Exemplo n.º 45
0
        public RoleStore(
            ILogger <RoleStore <TRole> > logger,
            ISiteResolver siteResolver,
            IOptions <MultiTenantOptions> multiTenantOptionsAccessor,
            IUserRepository userRepository
            )
        {
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (siteResolver == null)
            {
                throw new ArgumentNullException(nameof(siteResolver));
            }
            if (userRepository == null)
            {
                throw new ArgumentNullException(nameof(userRepository));
            }
            //if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); }

            resolver = siteResolver;
            //logFactory = loggerFactory;
            //log = loggerFactory.CreateLogger(this.GetType().FullName);
            log = logger;

            //config = configuration;
            //debugLog = config.UserStoreDebugEnabled();


            //siteSettings = site;

            multiTenantOptions = multiTenantOptionsAccessor.Value;
            userRepo           = userRepository;

            //if (debugLog) { log.LogInformation("constructor"); }
        }