Невозможно получить доступ к ssl-сертификату из библиотеки осьминога как объект X509Certificate2, используя powershell - PullRequest
0 голосов
/ 29 марта 2019

Я пытаюсь создать токен jwt, используя pfx, который я сохранил в библиотеке Octopus.Для этого мне нужно создать объект X509Certificate2, который принимает путь сертификата и пароль в качестве входных данных.Может кто-нибудь предложить, пожалуйста, способ сделать это с помощью powershell?

$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($certpath,'password')

Я ознакомился с некоторыми документами о том, как получить доступ к переменным сертификата в осьминоге, но как я могу использовать их для создания объекта X509Certificate2.https://octopus.com/docs/deployment-process/variables/certificate-variables

1 Ответ

0 голосов
/ 30 марта 2019

После просмотра документации Microsoft и Octopus мне удалось заставить ее работать. Octopus хранит сертификат как строку в кодировке base64 в переменной с именем Cert.Pfx, а конструктор X509Certificate2 принимает байтовый массив в качестве первого параметра. Поэтому в качестве первого шага мне просто нужно было преобразовать строку в кодировке base64 в байтовый массив.

$certbytearray=[System.Convert]::FromBase64String($OctopusParameters["Cert.Pfx"])
$CertPassKey="password"
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($certbytearray,$CertPassKey)
...