Skip to content

Commit

Permalink
Nullthumb (#80)
Browse files Browse the repository at this point in the history
* Update KeyfactorClient.cs - IIS Orchestrator Fails with https binding with no cert attached
fixes ab#47018
fixes ab#46865
  • Loading branch information
bhillkeyfactor authored Jul 6, 2023
1 parent ed4588d commit d7dabe3
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 7 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
2.2.1
* Fixed issue where https binding without cert was causing an error

2.2.0
* Added Support for GMSA Account by using no value for ServerUsernanme and ServerPassword. KF Command version 10.2 or later is required to specify empty credentials.
* Added local PowerShell support, triggered when specifying 'localhost' as the client machine while using the IISU or WinCert Orchestrator. This change was tested using KF Command 10.3
Expand Down
15 changes: 8 additions & 7 deletions IISU/ClientPSIIManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -178,16 +178,17 @@ public JobResult BindCertificate(X509Certificate2 x509Cert)
var bindings = ps.Invoke();
foreach (var binding in bindings)
{
if (binding.Properties["Protocol"].Value.ToString().Contains("http"))
if (binding.Properties["Protocol"].Value.ToString().Contains("https"))
{
_logger.LogTrace("Looping Bindings....");
var bindingSiteName = binding.Properties["name"].Value.ToString();
var bindingIpAddress = binding.Properties["Bindings"].Value.ToString()?.Split(':')[0];
var bindingPort = binding.Properties["Bindings"].Value.ToString()?.Split(':')[1];
var bindingHostName = binding.Properties["Bindings"].Value.ToString()?.Split(':')[2];
var bindingProtocol = binding.Properties["Protocol"].Value.ToString();
var bindingThumbprint = binding.Properties["thumbprint"].Value.ToString();
var bindingSniFlg = binding.Properties["sniFlg"].Value.ToString();
var bindingBindings = binding.Properties["Bindings"].Value.ToString()?.Split(':');
var bindingIpAddress = bindingBindings?.Length > 0 ? bindingBindings[0] : null;
var bindingPort = bindingBindings?.Length > 1 ? bindingBindings[1] : null;
var bindingHostName = bindingBindings?.Length > 2 ? bindingBindings[2] : null;
var bindingProtocol = binding.Properties["Protocol"]?.Value?.ToString();
var bindingThumbprint = binding.Properties["thumbprint"]?.Value?.ToString();
var bindingSniFlg = binding.Properties["sniFlg"]?.Value?.ToString();

_logger.LogTrace(
$"bindingSiteName: {bindingSiteName}, bindingIpAddress: {bindingIpAddress}, bindingPort: {bindingPort}, bindingHostName: {bindingHostName}, bindingProtocol: {bindingProtocol}, bindingThumbprint: {bindingThumbprint}, bindingSniFlg: {bindingSniFlg}");
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ The Windows Certificate Store Orchestrator Extension implements two certificate

#### Integration status: Production - Ready for use in production environments.


## About the Keyfactor Universal Orchestrator Extension

This repository contains a Universal Orchestrator Extension which is a plugin to the Keyfactor Universal Orchestrator. Within the Keyfactor Platform, Orchestrators are used to manage “certificate stores” — collections of certificates and roots of trust that are found within and used by various applications.
Expand All @@ -15,6 +16,7 @@ The Universal Orchestrator is the successor to the Windows Orchestrator. This Or




---


Expand Down

0 comments on commit d7dabe3

Please sign in to comment.