public static BindingResult Bind(string assemblyPath, string ipAddressString, string portString, CertificateThumbprintBindingParams bindingParams, bool unsafeBinding = false) { Logger.LogDebug("Binder", "Bind with existing cert started"); var basicParams = ParseBaseParams(assemblyPath, ipAddressString, portString); if (basicParams.Status != ParseBaseParamsStatus.Ok) { return new BindingResult { Status = BindingStatus.InvalidParams, Reason = EnumHelper.DisplayName(basicParams.Status) } } ; X509Certificate2 certificate; var certificateLookupResult = CertificateController.FindByThumbprint(bindingParams.Thumbprint, out certificate); if (certificateLookupResult != FindCertificateStatus.Found) { return new BindingResult { Status = BindingStatus.SslCertificateNotFound } } ; return(Bind(basicParams.AssemblyGuid, basicParams.IpAddress, basicParams.Port, certificate, unsafeBinding)); }
public static BindingResult Bind(string assemblyPath, string ipAddressString, string portString, CertificateFileBindingParams bindingParams, bool unsafeBinding = false) { Logger.LogDebug("Binder", "Bind with cert file started"); var basicParams = ParseBaseParams(assemblyPath, ipAddressString, portString); if (basicParams.Status != ParseBaseParamsStatus.Ok) { return new BindingResult { Status = BindingStatus.InvalidParams, Reason = EnumHelper.DisplayName(basicParams.Status) } } ; X509Certificate2 certificate; var openCertResult = CertificateController.TryInstallFromFile(bindingParams.Filepath, bindingParams.Password, out certificate); if (openCertResult != OpenCertificateStatus.Ok) { return new BindingResult { Status = BindingStatus.SslCertFromFileError, Reason = EnumHelper.DisplayName(openCertResult) } } ; return(Bind(basicParams.AssemblyGuid, basicParams.IpAddress, basicParams.Port, certificate, unsafeBinding)); }
public static IEnumerable <CertificateView> GetCertificateList() => CertificateController.GetCertificates();
public static BindingResult Bind(string assemblyPath, string ipAddressString, string portString, CertificateSubjectnameParams bindingParams, bool unsafeBinding = false) { Logger.LogDebug("Binder", "Bind with generation started"); var basicParams = ParseBaseParams(assemblyPath, ipAddressString, portString); if (basicParams.Status != ParseBaseParamsStatus.Ok) { return new BindingResult { Status = BindingStatus.InvalidParams, Reason = EnumHelper.DisplayName(basicParams.Status) } } ; var subjectName = bindingParams.SubjectName.ToLower(); if (!subjectName.ValidateSubjectname()) { Logger.LogEntry("Binder", LogLevel.Error, $"SubjectName {subjectName} is not valid"); return(new BindingResult { Status = BindingStatus.InvalidSubjectnameFormat }); } X509Certificate2 certificate; var certificateLookupResult = CertificateController.TryFindBySubjectName(subjectName, out certificate); switch (certificateLookupResult) { case FindCertificateStatus.Found: break; case FindCertificateStatus.NotFound: if (!bindingParams.AllowGenerated) { return(new BindingResult { Status = BindingStatus.SslCertificateNotFound }); } if (!CertificateController.TryGenerateCertificate(subjectName, out certificate)) { return new BindingResult { Status = BindingStatus.SslCertificateGenerationFailed } } ; break; case FindCertificateStatus.Error: return(new BindingResult { Status = BindingStatus.UnknownError }); default: throw new ArgumentOutOfRangeException(); } return(Bind(basicParams.AssemblyGuid, basicParams.IpAddress, basicParams.Port, certificate, unsafeBinding)); }