Вам необходимо добавить свойство в определение ресурса приложения функции как , описанное здесь , чтобы включить аутентификацию сертификата клиента. Затем вам нужно будет выполнить собственную проверку сертификата в коде функции.
{
"properties": {
"clientCertEnabled": true
}
}
Проверьте этот заголовок на наличие сертификата клиента в кодировке base64:
X-ARR-ClientCert
Одно предостережение здесь, оно может не работать с Планами потребления , я не удосужился проверить его, пожалуйста, оставьте комментарий, если он работает.
Кроме того, вы можете получить токен Bearer из Azure AD с потоком учетных данных клиента (client_id
и client_secret
) и вызвать функцию таким образом (включите EasyAuth, чтобы это работало). Большее предостережение здесь также является вопросом, может ли APIM сделать это для вас? Понятия не имею.
Обновление:
Нашел что-то здесь , похоже, что это выполнимо с исходящей политикой и делает необработанный POST-запрос в Azure AD, что нормально, , поскольку именно этот поток действительно имеет значение .