Ключ API веб-сервисов Drupal7 REST против двуногой аутентификации OAUTH для клиентской библиотеки JS-потребителей
Я работаю над API Drupal7, используя службы REST и библиотеку JS для потребителей (без кода сервера). Я не пытаюсь аутентифицировать/авторизовать конечных пользователей, только для идентификации и предоставления доступа к "приложению" с помощью КЛЮЧА API.
Цель состоит в том, чтобы "разработчики" создали учетную запись, запросили КЛЮЧ API, зарегистрировали домены для этого ключа api и использовали этот ключ для "идентификации" своего приложения в API Drupal7. Это в значительной степени та же модель API-КЛЮЧА, что и Google Карты используются в версии 2.
Я изучил подход OAUTH 2legged, который был бы замечательным, если бы моя клиентская библиотека работала на стороне сервера, поэтому секретный ключ не был бы раскрыт, но в нашем случае библиотека является только JS (на стороне клиента), и не кажется хорошей идеей раскрывать секретный ключ.
Я что-то упускаю в OAUTH, что позволит это сделать? Любые указания будут приветствоваться.
Спасибо!
1 answers
Решение пришло от Кайла Браунинга (спасибо!) - текущая версия служб 7.x-3.x-dev поддерживает следующие методы аутентификации OAuth:
- Нет, аутентификация OAuth будет отключена по умолчанию
- Без подписи с ключом потребителя
- Ключ потребителя, также известный как двуногий OAuth
- Ключ потребителя и маркер доступа, также известный как 3-ножный OAuth
С этой версией я закончил тем, что использовал ключ потребителя для клиента библиотеки как идентификационный маркер для приложений.