Ejemplo n.º 1
0
        public static void Register()
        {
            ConfigOptions options = new ConfigOptions
            {
                PushAuthorization        = AuthorizationLevel.Application,
                DiagnosticsAuthorization = AuthorizationLevel.Anonymous,
            };

            options.LoginProviders.Remove(typeof(AzureActiveDirectoryLoginProvider));
            options.LoginProviders.Add(typeof(AzureActiveDirectoryExtendedLoginProvider));

            HttpConfiguration config = ServiceConfig.Initialize(new ConfigBuilder(options));

            // Now add any missing connection strings and app settings from the environment.
            // Any envrionment variables found with names that match existing connection
            // string and app setting names will be used to replace the value.
            // This allows the Web.config (which typically would contain secrets) to be
            // checked in, but requires people running the tests to config their environment.
            IServiceSettingsProvider  settingsProvider = config.DependencyResolver.GetServiceSettingsProvider();
            ServiceSettingsDictionary settings         = settingsProvider.GetServiceSettings();
            IDictionary environmentVariables           = Environment.GetEnvironmentVariables();

            foreach (var conKey in settings.Connections.Keys.ToArray())
            {
                var envKey = environmentVariables.Keys.OfType <string>().FirstOrDefault(p => p == conKey);
                if (!string.IsNullOrEmpty(envKey))
                {
                    settings.Connections[conKey].ConnectionString = (string)environmentVariables[envKey];
                }
            }

            foreach (var setKey in settings.Keys.ToArray())
            {
                var envKey = environmentVariables.Keys.OfType <string>().FirstOrDefault(p => p == setKey);
                if (!string.IsNullOrEmpty(envKey))
                {
                    settings[setKey] = (string)environmentVariables[envKey];
                }
            }

            // Emulate the auth behavior of the server: default is application unless explicitly set.
            config.Properties["MS_IsHosted"] = true;

            config.Formatters.JsonFormatter.SerializerSettings.DateFormatHandling = DateFormatHandling.IsoDateFormat;

            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <IntIdRoundTripTableItem, IntIdRoundTripTableItemDto>()
                .ForMember(dto => dto.Id, map => map.MapFrom(db => MySqlFuncs.LTRIM(MySqlFuncs.StringConvert(db.Id))));
                cfg.CreateMap <IntIdRoundTripTableItemDto, IntIdRoundTripTableItem>()
                .ForMember(db => db.Id, map => map.MapFrom(dto => MySqlFuncs.LongParse(dto.Id)));

                cfg.CreateMap <IntIdMovie, IntIdMovieDto>()
                .ForMember(dto => dto.Id, map => map.MapFrom(db => MySqlFuncs.LTRIM(MySqlFuncs.StringConvert(db.Id))));
                cfg.CreateMap <IntIdMovieDto, IntIdMovie>()
                .ForMember(db => db.Id, map => map.MapFrom(dto => MySqlFuncs.LongParse(dto.Id)));
            });

            Database.SetInitializer(new DbInitializer());
        }
Ejemplo n.º 2
0
 public X509Certificate2ViewModel(X509Certificate2 model, IServiceSettingsProvider serviceSettings, ILogger <X509Certificate2ViewModel> logger, IDialogCoordinator dialogCoordinator)
 {
     this.Model             = model;
     this.serviceSettings   = serviceSettings;
     this.logger            = logger;
     this.dialogCoordinator = dialogCoordinator;
     this.CheckCertificatePermissions();
 }
Ejemplo n.º 3
0
        public ClientManagerServiceClient(IServiceSettingsProvider settingsProvider)
        {
            _settingsProvider = settingsProvider;

            var channel = GrpcChannel.ForAddress(settingsProvider.ComposeClientServiceUrl());

            _grpcClient = new ClientProtoService.ClientProtoServiceClient(channel);
        }
        public ActiveDirectoryConfigurationViewModel(IActiveDirectoryForestSchemaViewModelFactory forestFactory, IActiveDirectoryDomainPermissionViewModelFactory domainFactory, IDialogCoordinator dialogCoordinator, IServiceSettingsProvider serviceSettings)
        {
            this.dialogCoordinator = dialogCoordinator;
            this.domainFactory     = domainFactory;
            this.forestFactory     = forestFactory;
            this.serviceSettings   = serviceSettings;
            this.DisplayName       = "Active Directory";

            this.Forests = new BindableCollection <ActiveDirectoryForestSchemaViewModel>();
            this.Domains = new BindableCollection <ActiveDirectoryDomainPermissionViewModel>();
        }
 public LapsConfigurationViewModel(IDialogCoordinator dialogCoordinator, ICertificateProvider certificateProvider, IDirectory directory, IX509Certificate2ViewModelFactory certificate2ViewModelFactory, IServiceSettingsProvider serviceSettings, ILogger <LapsConfigurationViewModel> logger)
 {
     this.directory                    = directory;
     this.certificateProvider          = certificateProvider;
     this.certificate2ViewModelFactory = certificate2ViewModelFactory;
     this.dialogCoordinator            = dialogCoordinator;
     this.serviceSettings              = serviceSettings;
     this.logger  = logger;
     this.Forests = new List <Forest>();
     this.AvailableCertificates = new BindableCollection <X509Certificate2ViewModel>();
     this.DisplayName           = "Local admin passwords";
 }
Ejemplo n.º 6
0
 public JitConfigurationViewModel(JitConfigurationOptions jitOptions, IDialogCoordinator dialogCoordinator, IDirectory directory, IJitGroupMappingViewModelFactory groupMappingFactory, INotifiableEventPublisher eventPublisher, IJitDomainStatusViewModelFactory jitDomainStatusFactory, IServiceSettingsProvider serviceSettings)
 {
     this.dialogCoordinator      = dialogCoordinator;
     this.directory              = directory;
     this.jitOptions             = jitOptions;
     this.groupMappingFactory    = groupMappingFactory;
     this.jitDomainStatusFactory = jitDomainStatusFactory;
     this.serviceSettings        = serviceSettings;
     this.eventPublisher         = eventPublisher;
     this.DisplayName            = "Just-in-time access";
     this.GroupMappings          = new BindableCollection <JitGroupMappingViewModel>();
     this.Domains = new BindableCollection <JitDomainStatusViewModel>();
 }
        public HostingViewModel(HostingOptions model, IDialogCoordinator dialogCoordinator, IServiceSettingsProvider serviceSettings, ILogger <HostingViewModel> logger, IModelValidator <HostingViewModel> validator, IAppPathProvider pathProvider, INotifiableEventPublisher eventPublisher)
        {
            this.logger                 = logger;
            this.pathProvider           = pathProvider;
            this.OriginalModel          = model;
            this.WorkingModel           = this.CloneModel(model);
            this.dialogCoordinator      = dialogCoordinator;
            this.serviceSettings        = serviceSettings;
            this.Certificate            = this.GetCertificate();
            this.OriginalCertificate    = this.Certificate;
            this.ServiceAccount         = this.serviceSettings.GetServiceAccount();
            this.OriginalServiceAccount = this.ServiceAccount;
            this.ServiceStatus          = this.serviceSettings.ServiceController.Status.ToString();
            this.DisplayName            = "Web hosting";
            this.Validator              = validator;

            eventPublisher.Register(this);
        }
Ejemplo n.º 8
0
 public ActiveDirectoryDomainPermissionViewModelFactory(IServiceSettingsProvider serviceSettings, ILogger <ActiveDirectoryDomainPermissionViewModel> logger)
 {
     this.serviceSettings = serviceSettings;
     this.logger          = logger;
 }
Ejemplo n.º 9
0
 public ServiceManagerClient(IServiceSettingsProvider serviceSettingsProvider)
 {
     _serviceSettingsProvider = serviceSettingsProvider;
 }
Ejemplo n.º 10
0
 public GrpcClientBase(IServiceSettingsProvider serviceSettingsProvider)
 {
     ServiceSettingsProvider = serviceSettingsProvider;
 }
Ejemplo n.º 11
0
 public PropertyManagerClient(IServiceSettingsProvider serviceSettingsProvider)
     : base(serviceSettingsProvider)
 {
 }
Ejemplo n.º 12
0
        public static void Register()
        {
            ConfigOptions options = new ConfigOptions
            {
                PushAuthorization        = AuthorizationLevel.Application,
                DiagnosticsAuthorization = AuthorizationLevel.Anonymous,
            };

            HttpConfiguration config = ServiceConfig.Initialize(new ConfigBuilder(options));

            // Now add any missing connection strings and app settings from the environment.
            // Any envrionment variables found with names that match existing connection
            // string and app setting names will be used to replace the value.
            // This allows the Web.config (which typically would contain secrets) to be
            // checked in, but requires people running the tests to config their environment.
            IServiceSettingsProvider  settingsProvider = config.DependencyResolver.GetServiceSettingsProvider();
            ServiceSettingsDictionary settings         = settingsProvider.GetServiceSettings();
            IDictionary environmentVariables           = Environment.GetEnvironmentVariables();

            foreach (var conKey in settings.Connections.Keys.ToArray())
            {
                var envKey = environmentVariables.Keys.OfType <string>().FirstOrDefault(p => p == conKey);
                if (!string.IsNullOrEmpty(envKey))
                {
                    settings.Connections[conKey].ConnectionString = (string)environmentVariables[envKey];
                }
            }

            foreach (var setKey in settings.Keys.ToArray())
            {
                var envKey = environmentVariables.Keys.OfType <string>().FirstOrDefault(p => p == setKey);
                if (!string.IsNullOrEmpty(envKey))
                {
                    settings[setKey] = (string)environmentVariables[envKey];
                }
            }

            // Emulate the auth behavior of the server: default is application unless explicitly set.
            config.Properties["MS_IsHosted"] = true;

            config.Formatters.JsonFormatter.SerializerSettings.DateFormatHandling = DateFormatHandling.IsoDateFormat;

            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <RoundTripTableItem, RoundTripTableItemFakeStringId>()
                // While we would like to use ResolveUsing here, for ComplexType1 and 2,
                // we cannot because it is incompatable with LINQ queries, which is the
                // whole point of doing this mapping. Instead use AfterMap below.
                .ForMember(dst => dst.ComplexType1, map => map.Ignore())
                .ForMember(dst => dst.ComplexType2, map => map.Ignore())
                .ForMember(dst => dst.IntId, map => map.MapFrom(src => src.RoundTripTableItemId))
                .ForMember(dst => dst.Id, map => map.MapFrom(src => SqlFuncs.StringConvert(src.RoundTripTableItemId).Trim()))
                .AfterMap((src, dst) =>
                {
                    dst.ComplexType1 = src.ComplexType1Serialized == null ? null : JsonConvert.DeserializeObject <ComplexType[]>(src.ComplexType1Serialized);
                    dst.ComplexType2 = src.ComplexType2Serialized == null ? null : JsonConvert.DeserializeObject <ComplexType2>(src.ComplexType2Serialized);
                });
                cfg.CreateMap <RoundTripTableItemFakeStringId, RoundTripTableItem>()
                .ForMember(dst => dst.ComplexType1Serialized, map => map.ResolveUsing(src => (src.ComplexType1 == null ? null : JsonConvert.SerializeObject(src.ComplexType1))))
                .ForMember(dst => dst.ComplexType2Serialized, map => map.ResolveUsing(src => (src.ComplexType2 == null ? null : JsonConvert.SerializeObject(src.ComplexType2))))
                .ForMember(dst => dst.RoundTripTableItemId, map => map.MapFrom(src => src.Id));


                cfg.CreateMap <StringIdRoundTripTableItemForDB, StringIdRoundTripTableItem>()
                .ForMember(dst => dst.Complex, map => map.Ignore())
                .ForMember(dst => dst.ComplexType, map => map.Ignore())
                .AfterMap((src, dst) =>
                {
                    dst.Complex     = src.ComplexSerialized == null ? null : JsonConvert.DeserializeObject <string[]>(src.ComplexSerialized);
                    dst.ComplexType = src.ComplexTypeSerialized == null ? null : JsonConvert.DeserializeObject <string[]>(src.ComplexTypeSerialized);
                });
                cfg.CreateMap <StringIdRoundTripTableItem, StringIdRoundTripTableItemForDB>()
                .ForMember(dst => dst.ComplexSerialized, map => map.ResolveUsing(src => (src.Complex == null ? null : JsonConvert.SerializeObject(src.Complex))))
                .ForMember(dst => dst.ComplexTypeSerialized, map => map.ResolveUsing(src => (src.ComplexType == null ? null : JsonConvert.SerializeObject(src.ComplexType))));

                cfg.CreateMap <W8JSRoundTripTableItemForDB, W8JSRoundTripTableItem>()
                .ForMember(dst => dst.ComplexType, map => map.Ignore())
                .ForMember(dst => dst.Id, map => map.MapFrom(src => src.W8JSRoundTripTableItemForDBId))
                .AfterMap((src, dst) =>
                {
                    dst.ComplexType = src.ComplexTypeSerialized == null ? null : JsonConvert.DeserializeObject <string[]>(src.ComplexTypeSerialized);
                });
                cfg.CreateMap <W8JSRoundTripTableItem, W8JSRoundTripTableItemForDB>()
                .ForMember(dst => dst.ComplexTypeSerialized, map => map.ResolveUsing(src => (src.ComplexType == null ? null : JsonConvert.SerializeObject(src.ComplexType))))
                .ForMember(dst => dst.W8JSRoundTripTableItemForDBId, map => map.MapFrom(src => src.Id));
            });

            Database.SetInitializer(new DropCreateDatabaseIfModelChanges <SDKClientTestContext>());
        }
Ejemplo n.º 13
0
 public ReminderServiceClient(IServiceSettingsProvider serviceSettingsProvider)
     : base(serviceSettingsProvider)
 {
 }
Ejemplo n.º 14
0
 public AadHelperProvider(IServiceSettingsProvider settingsProvider, HttpConfiguration config)
 {
     this.settingsProvider = settingsProvider;
     this.configuration    = config;
 }
 public ActiveDirectoryDomainPermissionViewModel(Domain domain, IServiceSettingsProvider serviceSettings, ILogger <ActiveDirectoryDomainPermissionViewModel> logger)
 {
     this.logger            = logger;
     this.domain            = domain;
     this.serviceAccountSid = serviceSettings.GetServiceAccount();
 }
Ejemplo n.º 16
0
 public X509Certificate2ViewModelFactory(IServiceSettingsProvider serviceProvider, ILogger <X509Certificate2ViewModel> logger, IDialogCoordinator dialogCoordinator)
 {
     this.serviceProvider   = serviceProvider;
     this.logger            = logger;
     this.dialogCoordinator = dialogCoordinator;
 }