2014-10-29 2 views
1

Я хотел использовать Azure API руководство для ознакомления с существующими API сторонним разработчикам. API Azure API предоставляет портал разработчика, в котором третьи стороны могут подписываться и получать подписные ключи. Затем ключ подписки должен передаваться с каждым запросом в качестве параметра строки запроса или вместе с параметрами POST.Azure API Management и HMAC

Это, похоже, вызывает беспокойство, поскольку существует вероятность того, что кто-то легко получит доступ к этому ключу, если он сможет перехватить HTTP трафик. Общим механизмом является создание HMAC запроса с использованием секретности клиента и отправка его вместе с запросом для обеспечения целостности и аутентичности запроса и не отправки секретариата клиента вместе с запросом.

  • Можно ли включить HMAC проверки целостности на основе Azure Management API?

  • Также возможно настроить Azure API Управление отправляет ответ с помощью HMAC, чтобы клиент также мог проверить, что ответ исходит из надежного источника?

ответ

0

https поддерживается вашим клиентом и Azure API Management.

+0

Да, но HTTPS не будет достаточно, чтобы предотвратить запрос повторных атак. HMAC может помочь реализовать тайм-ауты запроса – Gaurav

+0

. Можете ли вы добавить запрос в наш UserVoice: http://feedback.azure.com/forums/248703-api-management – nababa

1

Что касается расчета кода аутентификации сообщения, что бы вы хотели использовать в качестве входных данных для функции хеширования - просто URL-адрес, все тело, что-то еще?

В качестве альтернативы вы можете использовать политику проверки подлинности сертификата клиента для дополнительной безопасности, но я понимаю, что это не настоящая замена для HMAC: https://msdn.microsoft.com/en-us/library/azure/061702a7-3a78-472b-a54a-f3b1e332490d#ClientCertificate

+1

Вы также можете использовать политику проверки токена JWT: https : //msdn.microsoft.com/en-us/library/azure/034febe3-465f-4840-9fc6-c448ef520b0f#ValidateJWT Ваше приложение будет выставлять токен JWT с секретом, а затем прокси-сервер APIM будет проверять его либо на используя ключ подписи или путем вызова конечной точки конфигурации OpenID. –