Skip to content

84188 binding ecc renewal failure#182

Merged
indrora merged 4 commits intorelease-3.0from
84188-Binding_ECC_Renewal_Failure
Mar 26, 2026
Merged

84188 binding ecc renewal failure#182
indrora merged 4 commits intorelease-3.0from
84188-Binding_ECC_Renewal_Failure

Conversation

@rcpokorny
Copy link
Copy Markdown
Collaborator

Fixed a problem when renewing ECC Certificates.
Updated documentation to identify SSL flags.

Copilot AI review requested due to automatic review settings March 19, 2026 02:53
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses ECC certificate renewal issues in the IISU/WinCert PowerShell automation and expands documentation around IIS SSL Flags, while also adding generated helper scripts to create required store types via REST/curl/kfutil.

Changes:

  • Update Get-CertificateCSP to better detect ECC (ECDsa) and other CNG-backed private keys.
  • Add/refresh IISU SSL Flags documentation (including per-OS/IIS tables) and update related screenshots.
  • Add generated scripts (PowerShell + Bash) to create the 4 store types via REST API (Invoke-RestMethod/curl) and via kfutil.

Reviewed changes

Copilot reviewed 8 out of 9 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
scripts/store_types/powershell/restmethod_create_store_types.ps1 New generated PowerShell REST script to create store types (includes OAuth/basic auth handling).
scripts/store_types/powershell/kfutil_create_store_types.ps1 New generated PowerShell script to create store types using kfutil.
scripts/store_types/bash/kfutil_create_store_types.sh New generated Bash script to create store types using kfutil.
scripts/store_types/bash/curl_create_store_types.sh New generated Bash script to create store types using curl (OAuth/basic auth).
docsource/images/WinCert-basic-store-type-dialog.png Updated/added documentation image asset.
docsource/images/IISU-basic-store-type-dialog.png Updated/added documentation image asset.
docsource/iisu.md Adds required Overview section + expands SSL flags documentation.
README.md Replaces placeholder with IISU SSL flags documentation content.
IISU/PowerShellScripts/WinCertScripts.ps1 Version bump + ECC/CNG provider detection improvements in Get-CertificateCSP.
CHANGELOG.md Adds 3.0.1 release note for ECC renewal fix.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docsource/iisu.md
Comment on lines +14 to +18
Note that SNI/SSL Flags were introduced in IIS 8.0, so they are not available in Windows Server 2012 (IIS 8.0) and earlier versions, nor supported in this extension.

---

#### Windows Server 20162012 R2/Windows 8.1 (IIS 8.5)
Comment thread docsource/iisu.md

---

#### Windows Server 20162012 R2/Windows 8.1 (IIS 8.5)
Comment thread README.md
Comment on lines +379 to +383
Note that SNI/SSL Flags were introduced in IIS 8.0, so they are not available in Windows Server 2012 (IIS 8.0) and earlier versions, nor supported in this extension.

---

##### Windows Server 20162012 R2/Windows 8.1 (IIS 8.5)
client_id = $env:KEYFACTOR_AUTH_CLIENT_ID
client_secret = $env:KEYFACTOR_AUTH_CLIENT_SECRET
}
$tokenResp = Invoke-RestMethod -Method Post -Uri $env:KEYFACTOR_AUTH_TOKEN_URL -Body $tokenBody
"DependsOn": "",
"DefaultValue": "0",
"Options": "",
"Description": "A 128-Bit Flag that determines what type of SSL settings you wish to use. The default is 0, meaning No SNI. For more information, check IIS documentation for the appropriate bit setting.)"
Comment on lines +29 to +35
echo "Fetching OAuth token..."
BEARER_TOKEN=$(curl -s -X POST "${KEYFACTOR_AUTH_TOKEN_URL}" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "grant_type=client_credentials" \
--data-urlencode "client_id=${KEYFACTOR_AUTH_CLIENT_ID}" \
--data-urlencode "client_secret=${KEYFACTOR_AUTH_CLIENT_SECRET}" | jq -r '.access_token')
if [ -z "${BEARER_TOKEN}" ] || [ "${BEARER_TOKEN}" = "null" ]; then
"DependsOn": "",
"DefaultValue": "0",
"Options": "",
"Description": "A 128-Bit Flag that determines what type of SSL settings you wish to use. The default is 0, meaning No SNI. For more information, check IIS documentation for the appropriate bit setting.)"
Comment thread CHANGELOG.md
@@ -1,3 +1,6 @@
3.0.1
* Fixed an issues when renewing ECC Certificates
Comment on lines +1792 to 1794
# ── 1. Legacy CryptoAPI path (RSACryptoServiceProvider) ──────────────
$privateKey = $cert.PrivateKey

if ($privateKey -and $privateKey.CspKeyContainerInfo) {
Comment on lines +1844 to 1846
Write-Verbose "No supported key type detected; provider name could not be determined"
return ""
}
@indrora indrora merged commit 658b72e into release-3.0 Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants