public AuthenticationViewModel(AuthenticationOptions model, ILogger <AuthenticationViewModel> logger, INotifyModelChangedEventPublisher eventPublisher, IDialogCoordinator dialogCoordinator, IX509Certificate2ViewModelFactory x509ViewModelFactory, IDirectory directory, IShellExecuteProvider shellExecuteProvider, IObjectSelectionProvider objectSelectionProvider, IProtectedSecretProvider secretProvider)
        {
            this.shellExecuteProvider = shellExecuteProvider;
            this.model                   = model;
            this.dialogCoordinator       = dialogCoordinator;
            this.x509ViewModelFactory    = x509ViewModelFactory;
            this.logger                  = logger;
            this.directory               = directory;
            this.eventPublisher          = eventPublisher;
            this.objectSelectionProvider = objectSelectionProvider;
            this.secretProvider          = secretProvider;

            this.DisplayName = "Authentication";

            model.Iwa ??= new IwaAuthenticationProviderOptions();
            model.Oidc ??= new OidcAuthenticationProviderOptions();
            model.WsFed ??= new WsFedAuthenticationProviderOptions();
            model.ClientCert ??= new CertificateAuthenticationProviderOptions();
            model.ClientCert.TrustedIssuers ??= new List <string>();
            model.ClientCert.RequiredEkus ??= new List <string>();
            model.AllowedPrincipals ??= new List <string>();

            this.TrustedIssuers    = new BindableCollection <X509Certificate2ViewModel>();
            this.RequiredEkus      = new BindableCollection <string>(model.ClientCert.RequiredEkus);
            this.AllowedPrincipals = new BindableCollection <SecurityIdentifierViewModel>();
        }
Пример #2
0
 public SecretRekeyProvider(IDialogCoordinator dialogCoordinator, ILogger <SecretRekeyProvider> logger, AuthenticationOptions authnOptions, EmailOptions emailOptions, IProtectedSecretProvider secretProvider)
 {
     this.dialogCoordinator = dialogCoordinator;
     this.logger            = logger;
     this.authnOptions      = authnOptions;
     this.emailOptions      = emailOptions;
     this.secretProvider    = secretProvider;
 }
 private CertificateSynchronizationProvider(RandomNumberGenerator rng, ILogger <CertificateSynchronizationProvider> logger, IProtectedSecretProvider secretProvider, ICertificatePermissionProvider certPermissionProvider, IAmsLicenseManager licenseManager)
 {
     this.rng                    = rng;
     this.logger                 = logger;
     this.secretProvider         = secretProvider;
     this.certPermissionProvider = certPermissionProvider;
     this.licenseManager         = licenseManager;
 }
Пример #4
0
        public EmailViewModel(EmailOptions emailOptions, INotifyModelChangedEventPublisher eventPublisher, IShellExecuteProvider shellExecuteProvider, IProtectedSecretProvider secretProvider, AdminNotificationOptions adminNotificationOptions)
        {
            this.shellExecuteProvider     = shellExecuteProvider;
            this.secretProvider           = secretProvider;
            this.adminNotificationOptions = adminNotificationOptions;
            this.emailOptions             = emailOptions;

            this.DisplayName = "Email";
            eventPublisher.Register(this);
        }
 public OidcAuthenticationProvider(IOptions <OidcAuthenticationProviderOptions> options, ILogger <OidcAuthenticationProvider> logger, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider, IProtectedSecretProvider secretProvider)
     : base(logger, directory, httpContextAccessor, authzContextProvider)
 {
     this.secretProvider = secretProvider;
     this.options        = options.Value;
 }
Пример #6
0
 public SmtpProvider(IOptionsMonitor <EmailOptions> emailOptions, ILogger <SmtpProvider> logger, IProtectedSecretProvider secretProvider)
 {
     this.emailOptions   = emailOptions;
     this.logger         = logger;
     this.secretProvider = secretProvider;
 }
 public CertificateSynchronizationProvider(RandomNumberGenerator rng, ILogger <CertificateSynchronizationProvider> logger, DataProtectionOptions dataProtectionOptions, IProtectedSecretProvider secretProvider, ICertificatePermissionProvider certPermissionProvider, IAmsLicenseManager licenseManager)
     : this(rng, logger, secretProvider, certPermissionProvider, licenseManager)
 {
     this.dataProtectionOptions = dataProtectionOptions;
 }
 public CertificateSynchronizationProvider(RandomNumberGenerator rng, ILogger <CertificateSynchronizationProvider> logger, IOptionsMonitor <DataProtectionOptions> dataProtectionOptions, IProtectedSecretProvider secretProvider, ICertificatePermissionProvider certPermissionProvider, IAmsLicenseManager licenseManager)
     : this(rng, logger, secretProvider, certPermissionProvider, licenseManager)
 {
     this.dataProtectionOptions = dataProtectionOptions.CurrentValue;
     dataProtectionOptions.OnChange((o, s) =>
     {
         this.dataProtectionOptions = o;
         this.ImportCertificatesFromConfig();
     });
 }