#azure #azure-active-directory #azure-logic-apps #azure-keyvault #azure-authentication
#azure #azure-active-directory #azure-logic-apps #azure-keyvault #azure-аутентификация
Вопрос:
У меня есть сертификат, хранящийся в моем хранилище ключей Azure. Мне нужно создать приложение logic в той же подписке, чтобы использовать этот сертификат для аутентификации с конечной точкой веб-API службы приложений Azure с использованием AAD. Как мне получить сертификат из приложения logic? Я надеюсь, что смогу каким-то образом получить его непосредственно из приложения logic, не загружая его локально и повторно загружая в приложение Logic.
Ответ №1:
Вы можете вызвать REST API — Get Certificate
в приложении logic, чтобы получить сертификат, выполните следующие действия.
1. Включите присвоенный системой идентификатор приложения logic на портале Azure
2. Перейдите к Access policies
вашему keyvault, добавьте к нему идентификатор, присвоенный системе, с правильным Certificate Permissions
, следуйте этому документу.
3.In в приложении logic используйте HTTP
операцию, как показано ниже.
Комментарии:
1. Этот метод извлекает только открытый ключ, которого недостаточно для проверки подлинности клиента. Закрытый ключ можно получить как секретный под тем же именем, что и сохраненный сертификат. Обратите внимание, что пароль вам больше не понадобится, поскольку keyvault удалил его ( itnext.io /… ). Альтернативой является кодирование PFX с паролем в base64 и сохранение его как секретного.
2. Вы нашли решение? Я получаю сообщение об ошибке типа — в предоставленном сертификате аутентификации отсутствует закрытый ключ. Для подписи запроса требуется закрытый ключ.
Ответ №2:
Храните свои сертификаты в хранилище ключей, но если вы хотите использовать их в приложении Logic, встроенные действия хранилища ключей не помогут. Вам придется прибегнуть к HTTP-вызовам REST API!