Service Fabric, развертывание Azure Devops не удается: указанный сетевой пароль неверен

Недавно наша ИТ-группа приказала мне отключить пулы NAT в моем кластере служебной фабрики из-за угроз безопасности. Единственный способ сделать это - развернуть новый кластер со всеми его компонентами.

Поскольку это тестовая среда, я предпочитаю использовать самозаверяющий сертификат без пароля для моего кластера, сертификат находится в моем хранилище, и кластер запущен и работает.

Проблема, с которой я столкнулся сейчас, заключается в том, что когда я пытаюсь развернуть свое приложение из конвейера выпуска Azure Devops, я получаю следующее сообщение:

Произошла ошибка при попытке импортировать сертификат. Убедитесь, что ваша конечная точка службы настроена правильно с правильным значением сертификата и, если сертификат защищен паролем, действительным паролем. Сообщение об ошибке: исключение, вызывающее «Импорт» с аргументом (ами) «3»: «Указанный сетевой пароль неверен.

Я создал самоподписанный сертификат в Key Vault, загрузил сертификат и использовал Powershell, чтобы получить строку Base64 для подключения к службе.

Должен ли я сам создать сертификат с паролем?


person Steve    schedule 13.06.2020    source источник
comment
См. Комментарии здесь. Сертификат должен содержать закрытый ключ и пароль. Вы можете использовать OpenSSL для добавления пароля.   -  person Oliver    schedule 13.06.2020
comment
чтобы быть педантичным ... нужен сертификат и закрытый ключ. открытый ключ находится в сертификате. сертификат не содержит закрытого ключа. если вы создаете самозаверяющий сертификат в KV, вам нужно будет загрузить файл PFX, а не файл CER. Файл PFX - это сертификат + закрытый ключ, а файл CER - это только сертификат. IIRC, KV не загружает файл PFX, зашифрованный с помощью pwd.   -  person MichaelHoward-MSFT    schedule 13.06.2020


Ответы (1)


Руководствуясь двумя предоставленными комментариями, я закончил создание сертификата на моем локальном компьютере с помощью сценария PowerShell, включенного в локальное время выполнения служебной фабрики.

Небольшое предостережение - изменить размер ключа в скрипте на больший, чем размер по умолчанию, потому что хранилище ke не поддерживает 1024 ключа.

Затем я экспортировал pfx из своих пользовательских сертификатов, добавил пароль (он необходим для подключения к службе) и ввел новый pfx в свое хранилище ключей.

Повторно развернул кластер, и все заработало.

person Steve    schedule 13.06.2020
comment
Привет, @Steve. Большое спасибо за это решение, которым поделились здесь. Вы можете принять свой ответ, чтобы другие могли напрямую узнать, что это работа. - person Kevin Lu-MSFT; 15.06.2020
comment
Спасибо, Кевин, документации по этому поводу очень мало, я понимаю, что мы не можем охватить все основы, но это похоже на очень общую настройку. Просто вопрос, если бы вы могли узнать, почему в хранилище ключей нет возможности создать сертификат с паролем? - person Steve; 15.06.2020