Внешний сервер аутентификации TYPO3

Я хотел бы использовать внешнюю службу аутентификации для внешних пользователей, которая работает с REST API.

То, что я сделал до сих пор:

  • Класс authenticationService в расширении TYPO3, который загружается с приоритетом 90. Кажется, он работает при отладке и имеет (все еще пустые) функции getUser, authUser и getGroups.

  • Скрипт проверки аутентификации PHP. Если ему предоставлено имя пользователя и pw, он создает URL-адрес для тестирования с помощью cURL в терминале. Пользовательские данные JSON отправляются обратно.

Как получить JSON в моем классе authenticationService? Следует ли использовать cURL напрямую, например Как отправлять переменные POST на внешний URL-адрес? Или есть основные методы, которые я должен использовать?

И я предполагаю, что мне нужно сопоставить JSON с временной записью пользователя внешнего интерфейса, чтобы предоставить аутентифицированному пользователю доступ к определенным страницам и т. Д. Как я могу это сделать?


person Jack70    schedule 16.10.2018    source источник


Ответы (1)


Если вы используете TYPO3 8 или 9, вы можете использовать класс TYPO3\CMS\Core\Http\RequestFactory для выполнения HTTP-запросов. См. https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/Http/Index.html, чтобы узнать об этом подробнее.

Для аутентификации внешнего интерфейса TYPO3 всегда требуется запись в fe_users таблице. Поэтому вам нужно будет вставить пользователя в эту таблицу. Затем вы можете либо оставить пользователя там для следующего входа в систему, либо создать процедуру очистки (например, с помощью запланированной задачи) для очистки старых пользователей.

person Rudy Gnodde    schedule 16.10.2018