Как назначить загруженный сертификат .pfx только одному проекту в Azure Devops - PullRequest
1 голос
/ 27 сентября 2019

У меня есть сертификат .pfx, который был загружен с помощью задачи «Загрузить защищенный файл» в мой build.sourceDirectory. Теперь я хочу назначить этот сертификат только одному проекту, а не всем проектам

Пробовал скрипт PowerShellно его бросание ниже ошибки.Пожалуйста, предложите любые другие альтернативы или исправьте скрипт, если что-то не так

Не удается найти перегрузку для «Import» и счетчика аргументов: «2».По адресу D: \ a_temp \ 88829cbf-115f-4b06-aa8a-c072600792f7.ps1: 10 символов: 1 + $ cert.Import ($ pfxpath, $ password) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId: MethodCountCouldNotFindBest

$pfxpath = '$(Build.SourceDirectory)\cert.pf'

 $password = '{password}'

 Add-Type -AssemblyName System.Security

 $cert = New-Object   
 System.Security.Cryptography.X509Certificates.X509Certificate2

 $cert.Import($pfxpath, $password )

 $store = new-object system.security.cryptography.X509Certificates.X509Store 
 -argumentlist "MY", CurrentUser

 `$store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]"ReadWrite")`

 $store.Add($cert)

 $store.Close()

1 Ответ

0 голосов
/ 30 сентября 2019

Вы можете пропустить аргумент для метода import.Официальные документы показывают, что вам нужно назначить флаг хранения для метода импорта.Для получения дополнительной информации о X509KeyStorageFlags .

Import(String, String, X509KeyStorageFlags)

Для получения дополнительной информации о Импорт , пожалуйста, отметьте здесь

...