public InviteService( IBaseDAO <AppUserEntity> userDAO, IBaseDAO <RoleEntity> roleDAO, IBaseDAO <InviteEntity> inviteDAO, IGroupStore groupStore, IGroupUserStore groupUserStore, IEmailService mailService, IAddInviteFilter addInviteFilter, IValidator <InviteToGroupRequest> inviteToGroupRequestValidator, IValidator <InviteRequest> inviteRequestValidator, ILogger <InviteService> logger, IOptions <IdentityUIOptions> identityManagementOptions, IOptions <IdentityUIEndpoints> identityManagementEndpoints) { _userDAO = userDAO; _roleDAO = roleDAO; _inviteDAO = inviteDAO; _groupStore = groupStore; _groupUserStore = groupUserStore; _mailService = mailService; _addInviteFilter = addInviteFilter; _inviteToGroupRequestValidator = inviteToGroupRequestValidator; _inviteRequestValidator = inviteRequestValidator; _logger = logger; _identityManagementOptions = identityManagementOptions.Value; _identityManagementEndpoints = identityManagementEndpoints.Value; }
public CredentialsService( UserManager <AppUserEntity> userManager, IEmailService emailService, ILoginService loginService, IIdentityUIUserInfoService identityUIUserInfoService, IValidator <RecoverPasswordRequest> forgotPasswordValidator, IValidator <ResetPasswordRequest> recoverPasswordValidator, IValidator <ChangePasswordRequest> changePasswordValidator, IValidator <CreatePasswordRequest> createPasswordValidator, ILogger <CredentialsService> logger, IOptionsSnapshot <IdentityUIOptions> identityManagementOptions, IOptionsSnapshot <IdentityUIEndpoints> identityManagementEndpoints) { _userManager = userManager; _emailService = emailService; _loginService = loginService; _identityUIUserInfoService = identityUIUserInfoService; _forgotPasswordValidator = forgotPasswordValidator; _recoverPasswordValidator = recoverPasswordValidator; _changePasswordValidator = changePasswordValidator; _createPasswordValidator = createPasswordValidator; _logger = logger; _identityManagementOptions = identityManagementOptions.Value; _identityManagementEndpoints = identityManagementEndpoints.Value; }
public ExternalLoginService( SignInManager <AppUserEntity> signInManager, UserManager <AppUserEntity> userManager, IIdentityUIUserInfoService identityUIUserInfoService, ISessionService sessionService, ILoginFilter canLoginService, IOptions <IdentityUIOptions> identityUIOptions, IOptions <IdentityUIEndpoints> identityUIEndpoints, IValidator <ExternalLoginRequest> externalLoginRequestValidator, ILogger <ExternalLoginService> logger) { _signInManager = signInManager; _userManager = userManager; _identityUIUserInfoService = identityUIUserInfoService; _sessionService = sessionService; _canLoginService = canLoginService; _identityUIOptions = identityUIOptions.Value; _identityUIEndpoints = identityUIEndpoints.Value; _externalLoginRequestValidator = externalLoginRequestValidator; _logger = logger; }
public TwoFactorAuthService( UserManager <AppUserEntity> userManager, SignInManager <AppUserEntity> signInManager, IValidator <AddTwoFactorAuthenticatorRequest> addTwoFactorValidator, IValidator <AddTwoFactorPhoneAuthenticationRequest> addPhoneTwoFactorValidator, IValidator <AddTwoFactorEmailAuthenticationRequest> addEmailTwoFactorValidator, ILoginService loginService, IEmailService emailService, ISmsSender smsSender, IMemoryCache memoryCache, IOptions <IdentityUIEndpoints> identityUIEndpoints, ILogger <TwoFactorAuthService> logger) { _userManager = userManager; _signInManager = signInManager; _loginService = loginService; _emailService = emailService; _smsSender = smsSender; _memoryCache = memoryCache; _addTwoFactorValidator = addTwoFactorValidator; _addPhoneTwoFactorValidator = addPhoneTwoFactorValidator; _addEmailTwoFactorValidator = addEmailTwoFactorValidator; _identityUIEndpoints = identityUIEndpoints.Value; _logger = logger; }
public AccountDataService(IOptions <IdentityUIEndpoints> identityUIEndpoints, SignInManager <AppUserEntity> signInManager, ILogger <AccountDataService> logger) { _identityUIEndpoints = identityUIEndpoints.Value; _signInManager = signInManager; _logger = logger; }
public SettingsController( IGroupAdminSettingsDataService groupAdminSettingsDataService, IGroupService groupService, IOptions <IdentityUIEndpoints> identityUIEndpoints) { _groupAdminSettingsDataService = groupAdminSettingsDataService; _groupService = groupService; _identityUIEndpoints = identityUIEndpoints.Value; }
public AccountController(ILoginService loginService, IEmailService emailService, IAddUserService addUserService, ICredentialsService credentialsService, IOptionsSnapshot <IdentityUIEndpoints> identityManagmentEndpoints) { _loginService = loginService; _emailService = emailService; _addUserService = addUserService; _credentialsService = credentialsService; _identityManagementEndpoints = identityManagmentEndpoints.Value; }
public EmailConfirmationService(UserManager <AppUserEntity> userManager, ILogger <EmailConfirmationService> logger, IEmailService emailService, IOptionsSnapshot <IdentityUIOptions> identityManagementOptions, IOptionsSnapshot <IdentityUIEndpoints> identityManagementEndpoints) { _userManager = userManager; _emailService = emailService; _logger = logger; _identityManagementOptions = identityManagementOptions.Value; _identityManagementEndpoints = identityManagementEndpoints.Value; }
public EmailDataService(IBaseRepository <EmailEntity> emailRepository, IBaseRepository <AppUserEntity> userRepository, IValidator <DataTableRequest> dataTableValidator, ILogger <EmailDataService> logger, IOptionsSnapshot <IdentityUIEndpoints> identityUIEndpoints) { _emailRepository = emailRepository; _userRepository = userRepository; _dataTableValidator = dataTableValidator; _logger = logger; _identityUIEndpoint = identityUIEndpoints.Value; }
public AccountController(ILoginService loginService, IEmailConfirmationService emailConfirmationService, IAddUserService addUserService, ICredentialsService credentialsService, IAccountDataService accountDataService, ITwoFactorAuthService twoFactorAuthService, IOptionsSnapshot <IdentityUIEndpoints> identityUIEndpoints) { _loginService = loginService; _emailConfirmationService = emailConfirmationService; _addUserService = addUserService; _credentialsService = credentialsService; _accountDataService = accountDataService; _twoFactorAuthService = twoFactorAuthService; _identityUIEndpoints = identityUIEndpoints.Value; }
public UserDataService(IUserRepository userRepository, IRoleRepository roleRepository, IBaseRepository <SessionEntity> sessionRepository, IOptions <IdentityUIEndpoints> identityUIEndpoints, IValidator <DataTableRequest> dataTableValidator, ILogger <UserDataService> logger) { _userRepository = userRepository; _roleRepository = roleRepository; _sessionRepository = sessionRepository; _identityUIEndpoints = identityUIEndpoints.Value; _dataTableValidator = dataTableValidator; _logger = logger; }
public TwoFactorAuthenticationDataService(UserManager <AppUserEntity> userManager, IBaseRepository <AppUserEntity> userRepository, ITwoFactorAuthService twoFactorAuthService, IHttpContextAccessor httpContextAccessor, IOptions <IdentityUIEndpoints> options, ILogger <TwoFactorAuthenticationDataService> logger) { _userManager = userManager; _userRepository = userRepository; _twoFactorAuthService = twoFactorAuthService; _httpContextAccessor = httpContextAccessor; _options = options.Value; _logger = logger; }
/// <summary> /// Configures IdentityUI /// </summary> /// <param name="services"></param> /// <param name="configuration"></param> /// <param name="endpointAction"></param> /// <returns></returns> public static IdentityUIServicesBuilder ConfigureIdentityUI(this IServiceCollection services, IConfiguration configuration, Action <IdentityUIEndpoints> endpointAction) { services.Configure <IdentityUIOptions>(configuration.GetSection("IdentityUI")); services.Configure <DatabaseOptions>(configuration.GetSection($"IdentityUI:{nameof(IdentityUIOptions.Database)}")); services.Configure <EmailSenderOptions>(configuration.GetSection($"IdentityUI:{nameof(IdentityUIOptions.EmailSender)}")); services.Configure <IdentityUIEndpoints>(endpointAction); IdentityUIEndpoints identityManagementEndpoints = new IdentityUIEndpoints(); endpointAction?.Invoke(identityManagementEndpoints); IdentityUIServicesBuilder builder = new IdentityUIServicesBuilder(services, identityManagementEndpoints); return(builder); }
public TwoFactorAuthenticationDataService( UserManager <AppUserEntity> userManager, IBaseRepository <AppUserEntity> userRepository, ITwoFactorAuthService twoFactorAuthService, IIdentityUIUserInfoService identityUIUserInfoService, IOptions <IdentityUIEndpoints> options, ILogger <TwoFactorAuthenticationDataService> logger) { _userManager = userManager; _userRepository = userRepository; _twoFactorAuthService = twoFactorAuthService; _identityUIUserInfoService = identityUIUserInfoService; _options = options.Value; _logger = logger; }
public ExternalLoginService(SignInManager <AppUserEntity> signInManager, UserManager <AppUserEntity> userManager, IHttpContextAccessor httpContextAccessor, IUrlGenerator urlGenerator, ISessionService sessionService, IOptions <IdentityUIEndpoints> identityOptions, IValidator <ExternalLoginRequest> externalLoginRequestValidator, ILogger <ExternalLoginService> logger) { _signInManager = signInManager; _userManager = userManager; _httpContextAccessor = httpContextAccessor; _urlGenerator = urlGenerator; _sessionService = sessionService; _identityOptions = identityOptions.Value; _externalLoginRequestValidator = externalLoginRequestValidator; _logger = logger; }
public AddUserService( UserManager <AppUserEntity> userManager, SignInManager <AppUserEntity> signInManager, IEmailConfirmationService emailService, IGroupUserService groupUserService, IAddUserFilter addUserFilter, IBaseDAO <AppUserEntity> userDAO, IBaseDAO <InviteEntity> inviteDAO, IBaseDAO <RoleEntity> roleDAO, IOptions <IdentityUIEndpoints> identityUIEndpoints, IValidator <NewUserRequest> newUserValidator, IValidator <RegisterRequest> registerValidator, IValidator <AcceptInviteRequest> acceptInviteValidator, IValidator <ExternalLoginRegisterRequest> externalLoginRequsterRequestValidator, IValidator <GroupBaseUserRegisterRequest> groupBaseUserRegisterRequestValidator, IValidator <BaseRegisterRequest> baseRegisterValidator, IValidator <IUserAttributeRequest> userAttributeRequestValidator, ILogger <AddUserService> logger) { _userManager = userManager; _signInManager = signInManager; _userDAO = userDAO; _inviteDAO = inviteDAO; _roleDAO = roleDAO; _emailService = emailService; _groupUserService = groupUserService; _addUserFilter = addUserFilter; _newUserValidator = newUserValidator; _registerValidator = registerValidator; _acceptInviteValidator = acceptInviteValidator; _externalLoginRequsterRequestValidator = externalLoginRequsterRequestValidator; _groupBaseUserRegisterRequestValidator = groupBaseUserRegisterRequestValidator; _userAttributeRequestValidator = userAttributeRequestValidator; _baseRegisterValidator = baseRegisterValidator; _identityUIEndpoints = identityUIEndpoints.Value; _logger = logger; }
public UserController( IGroupUserDataService groupUserDataService, IGroupUserService groupUserService, IManageUserService manageUserService, IImpersonateService impersonateService, IGroupAdminUserDataService groupAdminUserDataService, IOptions <IdentityUIClaimOptions> identityUICalimOptions, IOptions <IdentityUIEndpoints> identityUIEndpoints) { _groupUserDataService = groupUserDataService; _groupUserService = groupUserService; _manageUserService = manageUserService; _impersonateService = impersonateService; _groupAdminUserDataService = groupAdminUserDataService; _identityUIClaimOptions = identityUICalimOptions.Value; _identityUIEndpoints = identityUIEndpoints.Value; }
public InviteService(IBaseRepository <AppUserEntity> userRepository, IBaseRepository <InviteEntity> inviteRepository, IBaseRepository <RoleEntity> roleRepository, IGroupStore groupStore, IGroupUserStore groupUserStore, IEmailService mailService, IValidator <InviteToGroupRequest> inviteToGroupRequestValidator, IValidator <InviteRequest> inviteRequestValidator, ILogger <InviteService> logger, IOptionsSnapshot <IdentityUIOptions> identityManagementOptions, IOptionsSnapshot <IdentityUIEndpoints> identityManagementEndpoints) { _userRepository = userRepository; _inviteRepository = inviteRepository; _roleRepository = roleRepository; _groupStore = groupStore; _groupUserStore = groupUserStore; _mailService = mailService; _inviteToGroupRequestValidator = inviteToGroupRequestValidator; _inviteRequestValidator = inviteRequestValidator; _logger = logger; _identityManagementOptions = identityManagementOptions.Value; _identityManagementEndpoints = identityManagementEndpoints.Value; }
public AddUserService( UserManager <AppUserEntity> userManager, SignInManager <AppUserEntity> signInManager, IValidator <NewUserRequest> newUserValidator, IValidator <RegisterRequest> registerValidator, IValidator <AcceptInviteRequest> acceptInviteValidator, ILogger <AddUserService> logger, IEmailConfirmationService emailService, IBaseRepository <InviteEntity> inviteRepository, IBaseRepository <GroupEntity> groupRepository, IBaseRepository <GroupUserEntity> groupUserRepository, IValidator <ExternalLoginRegisterRequest> externalLoginRequsterRequestValidator, IOptions <IdentityUIEndpoints> identityUIEndpoints, IBaseRepository <RoleEntity> roleRepository, IValidator <IUserAttributeRequest> userAttributeRequestValidator) { _userManager = userManager; _signInManager = signInManager; _inviteRepository = inviteRepository; _groupRepository = groupRepository; _groupUserRepository = groupUserRepository; _roleRepository = roleRepository; _newUserValidator = newUserValidator; _registerValidator = registerValidator; _acceptInviteValidator = acceptInviteValidator; _externalLoginRequsterRequestValidator = externalLoginRequsterRequestValidator; _userAttributeRequestValidator = userAttributeRequestValidator; _emailService = emailService; _identityUIEndpoints = identityUIEndpoints.Value; _logger = logger; }
public ImpersonationController(IImpersonateService impersonateService, IOptions <IdentityUIEndpoints> identityUIEndpoints) { _impersonateService = impersonateService; _identityUIEndpoints = identityUIEndpoints.Value; }
public AuditController(IAuditDataService auditDataService, IOptions <IdentityUIEndpoints> identityOptions) { _auditDataService = auditDataService; _identityUIEndpoints = identityOptions.Value; }
/// <summary> /// Configures IdentityUI /// </summary> /// <param name="services"></param> /// <param name="configuration"></param> /// <param name="endpointAction"></param> /// <returns></returns> public static IdentityUIServicesBuilder ConfigureIdentityUI(this IServiceCollection services, IConfiguration configuration, Action <IdentityUIEndpoints> endpointAction) { IdentityUIOptions identityUIOptions = configuration.GetSection("IdentityUI").Get <IdentityUIOptions>(); if (identityUIOptions == null) { identityUIOptions = new IdentityUIOptions(); } services.Configure <IdentityUIOptions>(options => { options.BasePath = identityUIOptions.BasePath; options.Database = identityUIOptions.Database; options.EmailSender = identityUIOptions.EmailSender; }); services.Configure <ReCaptchaOptions>(options => { options.SiteKey = identityUIOptions.ReCaptcha?.SiteKey; options.SiteSecret = identityUIOptions.ReCaptcha?.SiteSecret; }); DatabaseOptions databaseOptions = new DatabaseOptions { Type = identityUIOptions.Database?.Type ?? DatabaseTypes.InMemory, ConnectionString = identityUIOptions.Database?.ConnectionString }; services.Configure <DatabaseOptions>(options => { options.Type = databaseOptions.Type; options.ConnectionString = databaseOptions.ConnectionString; }); services.Configure <EmailSenderOptions>(options => { options.Ip = identityUIOptions.EmailSender?.Ip; options.Port = identityUIOptions.EmailSender?.Port ?? -1; options.UserName = identityUIOptions.EmailSender?.UserName; options.Password = identityUIOptions.EmailSender?.Password; options.SenderEmail = identityUIOptions.EmailSender?.SenderName; options.SenderEmail = identityUIOptions.EmailSender?.SenderEmail; options.SenderDisplayName = identityUIOptions.EmailSender?.SenderDisplayName; options.UseSSL = identityUIOptions.EmailSender?.UseSSL ?? false; }); IdentityUIEndpoints identityManagementEndpoints = new IdentityUIEndpoints(); endpointAction?.Invoke(identityManagementEndpoints); if (!identityManagementEndpoints.UseEmailSender.HasValue) { if (identityUIOptions.EmailSender == null || string.IsNullOrEmpty(identityUIOptions.EmailSender.Ip)) { identityManagementEndpoints.UseEmailSender = false; } else { identityManagementEndpoints.UseEmailSender = true; } } services.Configure <IdentityUIEndpoints>(options => { options.Home = identityManagementEndpoints.Home; options.Login = identityManagementEndpoints.Login; options.Logout = identityManagementEndpoints.Logout; options.AccessDenied = identityManagementEndpoints.AccessDenied; options.Manage = identityManagementEndpoints.Manage; options.ConfirmeEmail = identityManagementEndpoints.ConfirmeEmail; options.ResetPassword = identityManagementEndpoints.ResetPassword; options.AcceptInvite = identityManagementEndpoints.AcceptInvite; options.ProfileImage = identityManagementEndpoints.ProfileImage; options.AdminLogo = identityManagementEndpoints.AdminLogo; options.AccountSettingsLogo = identityManagementEndpoints.AccountSettingsLogo; options.RegisterEnabled = identityManagementEndpoints.RegisterEnabled; options.GroupRegistrationEnabled = identityManagementEndpoints.GroupRegistrationEnabled; options.AuthenticatorIssuer = identityManagementEndpoints.AuthenticatorIssuer; options.UseEmailSender = identityManagementEndpoints.UseEmailSender; options.UseSmsGateway = identityManagementEndpoints.UseSmsGateway; options.InviteValidForTimeSpan = identityManagementEndpoints.InviteValidForTimeSpan; options.BypassTwoFactorOnExternalLogin = identityManagementEndpoints.BypassTwoFactorOnExternalLogin; options.UseEmailAsUsername = identityManagementEndpoints.UseEmailAsUsername; options.ShowAuditToUser = identityManagementEndpoints.ShowAuditToUser; options.CanChangeGroupName = identityManagementEndpoints.CanChangeGroupName; options.CanRemoveGroup = identityManagementEndpoints.CanRemoveGroup; options.CanRemoveUser = identityManagementEndpoints.CanRemoveUser; options.AllowImpersonation = identityManagementEndpoints.AllowImpersonation; }); IdentityUIServicesBuilder builder = new IdentityUIServicesBuilder(services, identityManagementEndpoints, databaseOptions, configuration); builder.Services.AddScoped <IEmailSender, NullEmailSender>(); builder.Services.AddScoped <ISmsSender, NullSmsSender>(); builder.Services.AddScoped <IReleaseManagement, ReleaseManagement>(); builder.Services.AddAudit(); builder.Services.AddTransient <IAuditDbContext, IdentityDbContext>(); services.AddScoped <Audit.Services.IAuditSubjectDataService>(x => { Microsoft.Extensions.Options.IOptions <Audit.Models.AuditOptions> auditOptions = x.GetRequiredService <Microsoft.Extensions.Options.IOptions <Audit.Models.AuditOptions> >(); Microsoft.Extensions.Options.IOptions <IdentityUIClaimOptions> identityUIClaimOptions = x.GetRequiredService <Microsoft.Extensions.Options.IOptions <IdentityUIClaimOptions> >(); Microsoft.AspNetCore.Http.IHttpContextAccessor httpContextAccessor = x.GetRequiredService <Microsoft.AspNetCore.Http.IHttpContextAccessor>(); IIdentityUIUserInfoService identityUIUserInfoService = x.GetRequiredService <IIdentityUIUserInfoService>(); if (httpContextAccessor.HttpContext != null) { return(new IdentityUIAuditSubjectService(httpContextAccessor, identityUIUserInfoService, auditOptions, identityUIClaimOptions)); } Audit.Services.IBackgroundServiceContextAccessor backgroundServiceContextAccessor = x.GetRequiredService <Audit.Services.IBackgroundServiceContextAccessor>(); if (backgroundServiceContextAccessor.BackgroundServiceContext != null) { return(new Audit.Services.BackgroundServiceAuditSubjectDataService(backgroundServiceContextAccessor)); } return(new Audit.Services.DefaultAuditSubjectService(auditOptions)); }); return(builder); }
public IdentityUIServicesBuilder(IServiceCollection services, IdentityUIEndpoints identityManagementEndpoints) { Services = services; IdentityManagementEndpoints = identityManagementEndpoints; }
/// <summary> /// Configures IdentityUI /// </summary> /// <param name="services"></param> /// <param name="configuration"></param> /// <param name="endpointAction"></param> /// <returns></returns> public static IdentityUIServicesBuilder ConfigureIdentityUI(this IServiceCollection services, IConfiguration configuration, Action <IdentityUIEndpoints> endpointAction) { IdentityUIOptions identityUIOptions = configuration.GetSection("IdentityUI").Get <IdentityUIOptions>(); if (identityUIOptions == null) { identityUIOptions = new IdentityUIOptions(); } services.Configure <IdentityUIOptions>(options => { options.BasePath = identityUIOptions.BasePath; options.Database = identityUIOptions.Database; options.EmailSender = identityUIOptions.EmailSender; }); services.Configure <DatabaseOptions>(options => { options.Type = identityUIOptions.Database?.Type ?? DatabaseTypes.InMemory; options.ConnectionString = identityUIOptions.Database?.ConnectionString; }); services.Configure <EmailSenderOptions>(options => { options.Ip = identityUIOptions.EmailSender?.Ip; options.Port = identityUIOptions.EmailSender?.Port ?? -1; options.UserName = identityUIOptions.EmailSender?.UserName; options.Password = identityUIOptions.EmailSender?.Password; options.SenderName = identityUIOptions.EmailSender?.SenderName; }); IdentityUIEndpoints identityManagementEndpoints = new IdentityUIEndpoints(); endpointAction?.Invoke(identityManagementEndpoints); if (!identityManagementEndpoints.UseEmailSender.HasValue) { if (identityUIOptions.EmailSender == null || string.IsNullOrEmpty(identityUIOptions.EmailSender.Ip)) { identityManagementEndpoints.UseEmailSender = false; } else { identityManagementEndpoints.UseEmailSender = true; } } services.Configure <IdentityUIEndpoints>(options => { options.Home = identityManagementEndpoints.Home; options.Login = identityManagementEndpoints.Login; options.Logout = identityManagementEndpoints.Logout; options.AccessDenied = identityManagementEndpoints.AccessDenied; options.Manage = identityManagementEndpoints.Manage; options.ConfirmeEmail = identityManagementEndpoints.ConfirmeEmail; options.ResetPassword = identityManagementEndpoints.ResetPassword; options.AcceptInvite = identityManagementEndpoints.AcceptInvite; options.RegisterEnabled = identityManagementEndpoints.RegisterEnabled; options.UseEmailSender = identityManagementEndpoints.UseEmailSender; options.UseSmsGateway = identityManagementEndpoints.UseSmsGateway; options.InviteValidForTimeSpan = identityManagementEndpoints.InviteValidForTimeSpan; }); IdentityUIServicesBuilder builder = new IdentityUIServicesBuilder(services, identityManagementEndpoints); builder.Services.AddScoped <IEmailSender, NullEmailSender>(); builder.Services.AddScoped <ISmsSender, NullSmsSender>(); return(builder); }
public AccountDataService(IOptions <IdentityUIEndpoints> identityUIEndpoints) { _identityUIEndpoints = identityUIEndpoints.Value; }