Как использовать Сервис Базовой Аутентификации модуля?
Я хочу добавить базовую авторизацию http для моего сервиса. Я установил его и включил в своей конфигурации конечной точки. Я получил это «Базовая аутентификация HTTP Services_basic_auth не имеет доступных настроек» в моей конфигурации конечной точки. где находится страница настроек?
Вышеупомянутый модуль используется для аутентификации вызовов сервисов, используя метод аутентификации Basic access . Вы будете использовать свое имя пользователя и пароль Drupal для аутентификации вызовов сервисов, добавив заголовок авторизации к вызову сервиса следующим образом.
Когда пользовательский агент хочет отправить учетные данные аутентификации сервера, он может использовать заголовок авторизации.
Заголовок авторизации построен следующим образом:
Например, ниже приведен вызов с использованием curl.
источник
Выберите конечную точку и нажмите « Изменить».
Используйте инструмент, такой как https://addons.mozilla.org/fr/firefox/addon/restclient/, чтобы проверить ваш клиент:
Примечание: у меня были проблемы с этим, поскольку, хотя опция базовой аутентификации HTTP была отмечена, при вызове ресурса этой конечной точки возвращалось 200 вместо 401 . То есть модуль не смог защитить мою конечную точку.
Проблема появляется в:
Я решил это сделать патч для модуля:
https://www.drupal.org/node/2734207
источник
Что может быть не так: после установки всех настроек:
И заметил, что если вы не отключите разрешение «Просмотр опубликованного контента», то любой пользователь может получить доступ к конечной точке API сервиса с возвращенным результатом.
источник
После установки
Services Basic Authentication
модуля перейдите в настройки REST вашего сервера:/admin/structure/services
Введите
Edit
опцию и внизу есть флажок:HTTP basic authentication
Включите его и нажмите кнопку Сохранить.
источник
Не забудьте использовать модуль доступа к контенту.
Добавление дополнительных деталей по запросу MPD.
Если вы не используете модуль доступа к контенту, то пользователь увидит весь контент, включая созданный другими, который он не должен был видеть. Например, пользователь A сохранил личные данные, которые пользователь B не должен видеть, или наоборот. Модуль базовой аутентификации Services включает аутентификацию, но не обеспечивает доступ к контенту. Модуль Content Access обеспечивает это. Если вы не используете контроль доступа к контенту, то нет смысла аутентифицировать пользователя.
источник