Я тестирую приложение laravel с безопасностью OID C Auth0. Я следовал за учебником здесь к письму.
В своей учетной записи Auth0 я создал новое соединение Enterprise / OID C и использовал функцию автоматического обнаружения для извлечения конечных точек с сервера OID C. Моя область действия openid profile email
, которая используется по умолчанию.
Нажатие кнопки «play» на странице определения OID C в Auth0 приводит меня к тестовому входу на странице поставщика OID C, и тест успешно завершен с отчетом профиля пользователя в Auth0, который выглядит правильно.
Когда я нажимаю ссылку login
в моем приложении laravel, он переходит к Auth0, как и ожидалось, что открывает поток OID C в провайдер, и я могу войти с моими учетными данными. Однако при возвращении из Auth0 в мое приложение URL-адрес обратного вызова
https://mytestapp.test/auth0/callback?error=invalid_request&error_description=profile%20is%20not%20defined&state=7c130bc30c3f5b9d2d9c3bcb1ff18bf6
, который затем вызывает ошибку
Argument 1 passed to Auth0\Login\Repository\Auth0UserRepository::getUserByUserInfo() must be of the type array, null given, called in /Users/myuser/Code/mytestapp/vendor/auth0/login/src/controllers/Auth0Controller.php on line 37
Откуда возникает ошибка «профиль не определен» и как я могу отладить, чтобы точно узнать, что Auth0 получает от поставщика OID C?