У меня есть конвейер Azure DevOps, который (с помощью сценария Powershell) добавляет сертификат к объекту масштабируемого набора виртуальных машин для приложения Azure Service Fabric.
Сертификат устанавливается правильно, но в приложении служебной фабрики возникает ошибка при попытке запуска с сообщением Internal.Cryptography.CryptoThrowHelper + WindowsCryptographicException: Keyset не существует.
Я немного погуглил и нашел эту страницу: Service Fabric: аутентификация с помощью Azure KeyVault через сертификат: KeySet не существует
что позволило мне вручную решить проблему, связавшись с узлом служебной фабрики и предоставив установленному сертификату разрешения на чтение с учетной записью пользователя NETWORK SERVICE.
Есть ли способ дать установленному сертификату это разрешение через DevOps Pipeline?
Вы можете добавить в свой сценарий PowerShell следующее:
Этот сценарий, похоже, изменяет разрешения для локального компьютера, на котором выполняется сценарий PowerShell, но сценарий PowerShell — это то, что будет выполняться Azure DevOps Pipeline, и он должен влиять на масштабируемый набор виртуальных машин для службы Azure Service Fabric. Есть ли способ сделать это? — person millie; 15.09.2020
Есть несколько способов запустить powershell на масштабируемом наборе. Рекомендуемый Microsoft способ: Расширение пользовательского сценария. Вы также можете использовать сценарий при запуске приложения Service Fabric. — person millie; 15.09.2020