Веб-сайт Azure не может общаться со сторонним API - PullRequest
0 голосов
/ 20 января 2019

Команда

Я недавно перенес ресурсы своего классического портала Azure в подписку CSP. Я успешно преобразовал свой облачный сервис Azure в веб-сайт приложений Azure в подписке CSP. Но есть одна вещь, которую я не могу подключить. Это сторонний API Когда у нас был облачный сервис, мы загрузили .pfx в azure и в коде, который мы используем для создания URI, который состоит из ключа сертификата + секретного ключа сертификата.

Ключ сертификата получен непосредственно из web.config. Но секретный ключ сертификата получен из EncryptedSettings.Appsettings ("SecretKeyName").

Это в основном получается из настроек зашифрованного приложения, сделанных ранее https://eren.ws/2014/02/04/encrypting-the-web-config-file-of-an-azure-cloud-service/

Но я не уверен, каким образом мы должны реализовать его на веб-сайте Azure.

Я пытался реализовать то же самое, но, к сожалению, похоже, что метод извлечения секретного ключа для облачной службы отличается от технологии веб-приложения Azure.

Когда я отлаживаю лазурный веб-сайт, я вижу, что он выдает ошибку как.

Не удалось расшифровать с помощью поставщика «CustomProvider». Сообщение об ошибке от поставщика: значение не может быть нулевым. Имя параметра: keyObject

Может кто-нибудь помочь мне?

1 Ответ

0 голосов
/ 20 января 2019

Вместо того чтобы хранить секреты в своей конфигурации, вы можете вместо этого сохранить их Azure KeyVault (который также предоставляет вам возможности управления секретами и т. Д.), А затем загрузить секреты во время выполнения.

Документация KeyVault:

https://docs.microsoft.com/en-us/azure/key-vault/

В частности, как использовать keyvault на сайтах Azure:

https://docs.microsoft.com/en-us/azure/key-vault/key-vault-use-from-web-application

И в наши дни, не используйте ручную аутентификацию для использования keyvault, вместо этого используйте «Managed Service Identity», вот руководство:

https://azure.microsoft.com/en-gb/resources/samples/app-service-msi-keyvault-dotnet/

Интересно, что во втором учебном пособии конкретно упоминается использование сертификатов для целей аутентификации (против keyvault), вы можете использовать этот метод для себя как упрощенный способ получения прямого доступа к вашему сертификату.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...