public HttpServiceListener(IActivator activator, IWorker worker, IServiceEndPointDefinition serviceEndPointDefinition, ICertificateLocator certificateLocator, ILog log, IEventPublisher <ServiceCallEvent> eventPublisher, IEnumerable <ICustomEndpoint> customEndpoints, JsonExceptionSerializer exceptionSerializer, ServiceSchema serviceSchema, Func <LoadShedding> loadSheddingConfig, IServerRequestPublisher serverRequestPublisher) { ServiceSchema = serviceSchema; _serverRequestPublisher = serverRequestPublisher; ServiceEndPointDefinition = serviceEndPointDefinition; Worker = worker; Activator = activator; Log = log; EventPublisher = eventPublisher; CustomEndpoints = customEndpoints.ToArray(); ExceptionSerializer = exceptionSerializer; LoadSheddingConfig = loadSheddingConfig; if (serviceEndPointDefinition.UseSecureChannel) { ServerRootCertHash = certificateLocator.GetCertificate("Service").GetHashOfRootCertificate(); } var urlPrefixTemplate = ServiceEndPointDefinition.UseSecureChannel ? "https://+:{0}/" : "http://+:{0}/"; Prefix = string.Format(urlPrefixTemplate, ServiceEndPointDefinition.HttpPort); Listener = new HttpListener { IgnoreWriteExceptions = true, Prefixes = { Prefix } }; }
public ServiceProxyProvider(string serviceName, IEventPublisher <ClientCallEvent> eventPublisher, ICertificateLocator certificateLocator, ILog log, Func <string, ReachabilityCheck, IMultiEnvironmentServiceDiscovery> serviceDiscoveryFactory, Func <DiscoveryConfig> getConfig, JsonExceptionSerializer exceptionSerializer) { EventPublisher = eventPublisher; CertificateLocator = certificateLocator; Log = log; ServiceName = serviceName; GetDiscoveryConfig = getConfig; ExceptionSerializer = exceptionSerializer; var metricsContext = Metric.Context(METRICS_CONTEXT_NAME).Context(ServiceName); _serializationTime = metricsContext.Timer("Serialization", Unit.Calls); _deserializationTime = metricsContext.Timer("Deserialization", Unit.Calls); _roundtripTime = metricsContext.Timer("Roundtrip", Unit.Calls); _successCounter = metricsContext.Counter("Success", Unit.Calls); _failureCounter = metricsContext.Counter("Failed", Unit.Calls); _hostFailureCounter = metricsContext.Counter("HostFailure", Unit.Calls); _applicationExceptionCounter = metricsContext.Counter("ApplicationException", Unit.Calls); ServiceDiscovery = serviceDiscoveryFactory(serviceName, ValidateReachability); }
protected CachedCertLocator(string certId, string cacheKey, ICertificateLocator certLocator, IMemoryCache cache) { _certLocator = certLocator; _cache = cache; _certId = certId; _cacheKey = cacheKey; }
public HttpServiceListener( IActivator activator, IWorker worker, IServiceEndPointDefinition serviceEndPointDefinition, ICertificateLocator certificateLocator, ILog log, IEnumerable <ICustomEndpoint> customEndpoints, IEnvironment environment, JsonExceptionSerializer exceptionSerializer, ServiceSchema serviceSchema, Func <LoadShedding> loadSheddingConfig, IServerRequestPublisher serverRequestPublisher, CurrentApplicationInfo appInfo) { ServiceSchema = serviceSchema; _serverRequestPublisher = serverRequestPublisher; ServiceEndPointDefinition = serviceEndPointDefinition; Worker = worker; Activator = activator; Log = log; CustomEndpoints = customEndpoints.ToArray(); Environment = environment; ExceptionSerializer = exceptionSerializer; LoadSheddingConfig = loadSheddingConfig; AppInfo = appInfo; if (ServiceEndPointDefinition.HttpsPort != null && ServiceEndPointDefinition.ClientCertificateVerification != ClientCertificateVerificationMode.Disable) { ServerRootCertHash = certificateLocator.GetCertificate("Service").GetHashOfRootCertificate(); } Listener = new HttpListener { IgnoreWriteExceptions = true }; if (ServiceEndPointDefinition.HttpsPort != null) { Listener.Prefixes.Add($"https://+:{ServiceEndPointDefinition.HttpsPort}/"); } if (ServiceEndPointDefinition.HttpPort != null) { Listener.Prefixes.Add($"http://+:{ServiceEndPointDefinition.HttpPort}/"); } if (!Listener.Prefixes.Any()) { Log.Warn(_ => _("HttpServiceListener is not listening on any ports, no HTTP or HTTPS ports in ServiceEndPointDefinition")); } var context = Metric.Context("Service").Context(AppInfo.Name); _serializationTime = context.Timer("Serialization", Unit.Calls); _deserializationTime = context.Timer("Deserialization", Unit.Calls); _roundtripTime = context.Timer("Roundtrip", Unit.Calls); _metaEndpointsRoundtripTime = context.Timer("MetaRoundtrip", Unit.Calls); _successCounter = context.Counter("Success", Unit.Calls); _failureCounter = context.Counter("Failed", Unit.Calls); _activeRequestsCounter = context.Timer("ActiveRequests", Unit.Requests); _endpointContext = context.Context("Endpoints"); }
public PrintJobsController( ICommandSender bus, IReadOnlyRepository <PrintJob> repository, IFindAccount accounts, ICertificateLocator certificateLocator, ITokenSecurity tokenSecurity) { this.bus = bus; this.repository = repository; this.accounts = accounts; this.certificateLocator = certificateLocator; this.tokenSecurity = tokenSecurity; }
public async static Task<SubscriptionCloudCredentials> GetCredentials(AzureSubscriptionBaseMessage message, ICertificateLocator certificates = null) { SubscriptionCloudCredentials cred = !string.IsNullOrWhiteSpace(message.AzureSubscriptionCertificateThumbprint) ? new CertificateCloudCredentials(message.AzureSubscriptionId, await certificates.GetCertificateAsync(message.AzureSubscriptionCertificateThumbprint)) as SubscriptionCloudCredentials : (!string.IsNullOrWhiteSpace(message.AzureSubscriptionToken) ? new TokenCloudCredentials(message.AzureSubscriptionId, message.AzureSubscriptionToken) : null); if (cred == null) throw new Exception("No Credentials Given"); return cred; }
public HttpServiceListener(IActivator activator, IWorker worker, IServiceEndPointDefinition serviceEndPointDefinition, ICertificateLocator certificateLocator, ILog log, IEnumerable <ICustomEndpoint> customEndpoints, IEnvironment environment, JsonExceptionSerializer exceptionSerializer, ServiceSchema serviceSchema, Func <LoadShedding> loadSheddingConfig, IServerRequestPublisher serverRequestPublisher, CurrentApplicationInfo appInfo ) { ServiceSchema = serviceSchema; _serverRequestPublisher = serverRequestPublisher; ServiceEndPointDefinition = serviceEndPointDefinition; Worker = worker; Activator = activator; Log = log; CustomEndpoints = customEndpoints.ToArray(); Environment = environment; ExceptionSerializer = exceptionSerializer; LoadSheddingConfig = loadSheddingConfig; AppInfo = appInfo; if (serviceEndPointDefinition.UseSecureChannel) { ServerRootCertHash = certificateLocator.GetCertificate("Service").GetHashOfRootCertificate(); } var urlPrefixTemplate = ServiceEndPointDefinition.UseSecureChannel ? "https://+:{0}/" : "http://+:{0}/"; Prefix = string.Format(urlPrefixTemplate, ServiceEndPointDefinition.HttpPort); Listener = new HttpListener { IgnoreWriteExceptions = true, Prefixes = { Prefix } }; var context = Metric.Context("Service").Context(AppInfo.Name); _serializationTime = context.Timer("Serialization", Unit.Calls); _deserializationTime = context.Timer("Deserialization", Unit.Calls); _roundtripTime = context.Timer("Roundtrip", Unit.Calls); _metaEndpointsRoundtripTime = context.Timer("MetaRoundtrip", Unit.Calls); _successCounter = context.Counter("Success", Unit.Calls); _failureCounter = context.Counter("Failed", Unit.Calls); _activeRequestsCounter = context.Timer("ActiveRequests", Unit.Requests); _endpointContext = context.Context("Endpoints"); }
public OrleansConfigurationBuilder(OrleansConfig orleansConfig, OrleansCodeConfig commonConfig, OrleansServiceInterfaceMapper orleansServiceInterfaceMapper, ClusterIdentity clusterIdentity, IServiceEndPointDefinition endPointDefinition, ServiceArguments serviceArguments, CurrentApplicationInfo appInfo, ICertificateLocator certificateLocator) { _orleansConfig = orleansConfig; _commonConfig = commonConfig; _orleansServiceInterfaceMapper = orleansServiceInterfaceMapper; _clusterIdentity = clusterIdentity; _endPointDefinition = endPointDefinition; _serviceArguments = serviceArguments; _appInfo = appInfo; _certificateLocator = certificateLocator; _siloHostBuilder = InitBuilder(); }
public ServiceProxyProvider(string serviceName, IEventPublisher <ClientCallEvent> eventPublisher, ICertificateLocator certificateLocator, ILog log, Func <string, ReachabilityChecker, IServiceDiscovery> serviceDiscoveryFactory, Func <DiscoveryConfig> getConfig, JsonExceptionSerializer exceptionSerializer) { EventPublisher = eventPublisher; CertificateLocator = certificateLocator; Log = log; ServiceName = serviceName; GetDiscoveryConfig = getConfig; ExceptionSerializer = exceptionSerializer; ServiceDiscovery = serviceDiscoveryFactory(serviceName, IsReachable); }
public SecureTokenPackageGenerator(ICertificateLocator certificateLocator, ITokenSecurity tokenSecurity) { this.certificateLocator = certificateLocator; this.tokenSecurity = tokenSecurity; }
public HttpsAuthenticator(ILog log, ICertificateLocator certificateLocator) { Log = log; CertificateLocator = certificateLocator; }
/// <summary> /// Initializes a new instance of the <see cref="ChainOfTrust"/> class. /// </summary> /// <param name="trustedCertificates">The trusted certificates to successfully /// terminate validation at.</param> /// <param name="certificateLocator">The locator for mentioned untrusted certificates.</param> public ChainOfTrust(ICertificateLocator certificateLocator, params ICertificate[] trustedCertificates) : this(trustedCertificates) { this.certificateLocator = certificateLocator ?? throw new System.ArgumentNullException(nameof(certificateLocator)); }
public MsisClientCertLocator(IOptions <Config> config, ICertificateLocator certLocator, IMemoryCache cache) { _certLocator = certLocator; _cache = cache; _certId = config.Value.CertId; }
public SigningCredentialsStore(IMemoryCache cache, ICertificateLocator certificateLocator, IOptions <Config> config) { _cache = cache; _certificateLocator = certificateLocator; _config = config.Value; }
public AnonymousTokenMasterKeyLoader(IOptions <AnonymousTokensConfig> config, ICertificateLocator certLocator) { _config = config.Value; _certLocator = certLocator; _keyBytesLoader = new CertificatePrivateKeyBytesLoader(); }
public MsisClientCertLocator(IOptions <Config> config, ICertificateLocator certLocator, IMemoryCache cache) : base(config.Value.CertId, nameof(MsisClientCertLocator), certLocator, cache) { }
public HttpServiceListener( IActivator activator, IWorker worker, IServiceEndPointDefinition serviceEndPointDefinition, ICertificateLocator certificateLocator, ILog log, IEnumerable <ICustomEndpoint> customEndpoints, IEnvironment environment, JsonExceptionSerializer exceptionSerializer, ServiceSchema serviceSchema, Func <LoadShedding> loadSheddingConfig, IServerRequestPublisher serverRequestPublisher, CurrentApplicationInfo appInfo, Func <MicrodotHostingConfig> microdotHostingConfigFactory, IMicrodotTypePolicySerializationBinder serializationBinder) { ServiceSchema = serviceSchema; _serverRequestPublisher = serverRequestPublisher; ServiceEndPointDefinition = serviceEndPointDefinition; Worker = worker; Activator = activator; Log = log; CustomEndpoints = customEndpoints.ToArray(); Environment = environment; ExceptionSerializer = exceptionSerializer; LoadSheddingConfig = loadSheddingConfig; AppInfo = appInfo; JsonSettings.SerializationBinder = serializationBinder; if (ServiceEndPointDefinition.HttpsPort != null && ServiceEndPointDefinition.ClientCertificateVerification != ClientCertificateVerificationMode.Disable) { var serviceCertificate = certificateLocator.GetCertificate("Service"); Log.Info(_ => _($"Service certificate loaded: {serviceCertificate.FriendlyName}", unencryptedTags: new { Thumbprint = serviceCertificate.Thumbprint.Substring(serviceCertificate.Thumbprint.Length - 5), })); ServerRootCertHash = serviceCertificate.GetHashOfRootCertificate(); } Listener = new HttpListener { IgnoreWriteExceptions = true }; _uriPrefixes = new List <string>(); if (ServiceEndPointDefinition.HttpsPort != null) { _uriPrefixes.Add($"https://+:{ServiceEndPointDefinition.HttpsPort}/"); } if (ServiceEndPointDefinition.HttpPort != null) { _uriPrefixes.Add($"http://+:{ServiceEndPointDefinition.HttpPort}/"); } if (!_uriPrefixes.Any()) { Log.Warn(_ => _("HttpServiceListener is not listening on any ports, no HTTP or HTTPS ports in ServiceEndPointDefinition")); } else { foreach (string prefix in _uriPrefixes) { Listener.Prefixes.Add(prefix); } } var context = Metric.Context("Service").Context(AppInfo.Name); _serializationTime = context.Timer("Serialization", Unit.Calls); _deserializationTime = context.Timer("Deserialization", Unit.Calls); _roundtripTime = context.Timer("Roundtrip", Unit.Calls); _metaEndpointsRoundtripTime = context.Timer("MetaRoundtrip", Unit.Calls); _successCounter = context.Counter("Success", Unit.Calls); _failureCounter = context.Counter("Failed", Unit.Calls); _activeRequestsCounter = context.Timer("ActiveRequests", Unit.Requests); _endpointContext = context.Context("Endpoints"); }