Gitea: Несоответствие OAuth2 + Github redirect_uri

Созданный на 5 апр. 2018  ·  3Комментарии  ·  Источник: go-gitea/gitea

Аннотация

Для документации OAuth2 требуются сведения о конфигурации.

Описание

При настройке метода аутентификации OAuth2 для Github пользователь перенаправляется на:
/user/oauth2/<authname>/callback?error=redirect_uri_mismatch&error_description=The+redirect_uri+MUST+match+the+registered+callback+URL+for+this+application.&error_uri=https%3A%2F%2Fdeveloper.github.com%2Fapps%2Fmanaging-oauth-apps%2Ftroubleshooting-authorization-request-errors%2F%23redirect-uri-mismatch
с ошибкой 500.

Проблема заключается в том, что URI обратного вызова не соответствует redirect_uri , но я следовал номенклатуре URI из admin/auths/new .

Я установил соответствующие биты (например, DISABLE_REGISTRATION = false и ENABLE_REVERSE_PROXY_AUTHENTICATION = true ) в моем custom / conf / app.ini, и похоже, что в шпаргалке или разделах аутентификации ничего нет документации по этой проблеме, и нет места для установки URI перенаправления из веб-интерфейса.

В идеале это должно быть закрыто после обновления документации, предоставляющей запись для часто задаваемых вопросов о конфигурации OAuth2, а «заведомо исправная» конфигурация должна быть записана в документации (в идеале с другими материалами для проверки подлинности).

Я могу пиарить документы, мне просто нужно знать, почему эта, казалось бы, простая вещь вызывает проблемы.

Скриншоты

2018 04 04 1511 47
2018 04 04 1513 13
2018 04 04 1519 58

Сведения о сервере

  • Версия Gitea (или ссылка на фиксацию): 1.4.0 + 3-g641d481c
  • Версия Git: 2.11.0
  • Операционная система: Debian GNU / Linux 9 (stretch)
  • База данных (используйте [x] ):

    • [] PostgreSQL

    • [x] MySQL (mariadb)

    • [] MSSQL

    • [] SQLite

  • Можете ли вы воспроизвести ошибку на https://try.gitea.io :

    • [] Да (укажите пример URL)

    • [x] Нет

    • [ ] Не имеет значения

  • Журнал:
    2018/04/04 22:19:25 [I] Режим журнала: файл (трассировка)
    2018/04/04 22:19:25 [I] Режим журнала XORM: файл (трассировка)
    2018/04/04 22:19:25 [I] Служба кеширования включена
    2018/04/04 22:19:25 [I] Служба сеанса включена
    2018.04.04 22:19:25 [I] Версия Git: 2.11.0
    2018/04/04 22:19:25 [T] Выполняется: CheckRepoStats
    2018/04/04 22:19:25 [T] Выполняется: ArchiveCleanup
    2018/04/04 22:19:25 [T] Выполняется: DeletedBranchesCleanup
    2018/04/04 22:19:25 [I] Режим запуска: Производство
    2018/04/04 22:19:25 [I] Слушайте: https://0.0.0.0 :
    2018/04/04 22:19:25 [I] Сервер LFS включен
    2018/04/04 22:19:31 [D] Идентификатор сеанса:cde9
    2018/04/04 22:19:31 [D] Токен CSRF:==
    2018/04/04 22:19:31 [D] Шаблон: пользователь / авторизация / вход
    2018/04/04 22:19:32 [D] Идентификатор сеанса:cde9
    2018/04/04 22:19:32 [D] Токен CSRF:==
    2018/04/04 22:19:33 [D] Идентификатор сеанса:cde9
    2018/04/04 22:19:33 [D] Токен CSRF:==
    2018/04/04 22:19:33 [... router / user / auth.go: 407 handleOAuth2SignIn ()] [E] UserSignIn: от провайдера получен недопустимый токен
    2018/04/04 22:19:33 [D] Шаблон: status / 500
kinquestion

Самый полезный комментарий

Какой у вас ROOT_URL? Я столкнулся с той же проблемой (включая несколько вводящую в заблуждение ошибку «Получен недопустимый токен ...»), но обнаружил, что для моего ROOT_URL установлено значение http: // foo , хотя я уже переместил его на https через apache httpd ( который является обратным проксированием в gitea). Изменение моего ROOT_URL на https: // foo устранило проблему

Все 3 Комментарий

Какой у вас ROOT_URL? Я столкнулся с той же проблемой (включая несколько вводящую в заблуждение ошибку «Получен недопустимый токен ...»), но обнаружил, что для моего ROOT_URL установлено значение http: // foo , хотя я уже переместил его на https через apache httpd ( который является обратным проксированием в gitea). Изменение моего ROOT_URL на https: // foo устранило проблему

Закрытие, пожалуйста, откройте снова, если вы все еще испытываете это.

Я пришел сюда, потому что испытал это и обнаружил, что ответ от @hnsr решил мою проблему.
Однако я не нашел способа изменить свой ROOT_URL из внешнего интерфейса (он действительно должен быть).

Была ли эта страница полезной?
3 / 5 - 1 рейтинги