Web API создание ключей API


Я заинтересован в создании ключей API для web.api и позволяет клиентам общаться с API, используя ключи API, а не веб-сайт авторизации.api предоставляет.

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

есть ли такая встроенная функция?

Если кто-то хочет его реализовать, как бы вы его обошли?

1 54

1 ответ:

вы можете достичь с помощью аутентификация HMAC. В принципе, может быть таблица базы данных под названием ApiKey (apiKey, secretKey). Каждый клиент имеет каждый Apikey и секретный ключ:

  1. ApiKey похож на открытый ключ и будет отправлен по HTTP (аналогично с именем пользователя).

  2. секретный ключ не передается по HTTP, используйте этот секретный ключ, чтобы сделать hmac некоторую информацию и отправить хэшированный вывод на сервер. С сервера сторона, основанная на открытом ключе, вы можете получить релевантный секретный ключ и хэш-информацию для сравнения с хэш-выводом.

Я разместил подробный ответ по адресу:как обеспечить безопасность веб-API ASP.NET

вы можете изменить имя Пользователя по ApiKey и Хэшированный пароль секретным ключом на мой ответ на карту с вашей идеей.