Gitea: OAuth2 + Github redirect_uri stimmt nicht überein

Erstellt am 5. Apr. 2018  ·  3Kommentare  ·  Quelle: go-gitea/gitea

Abstrakt

Für die OAuth2-Dokumentation sind Konfigurationsdetails erforderlich.

Beschreibung

Bei der Konfiguration der OAuth2-Authentifizierungsmethode für Github wird ein Benutzer umgeleitet zu:
/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
mit einem 500 Fehler.

Das Problem scheint darin zu liegen, dass der Rückruf-URI nicht mit dem redirect_uri übereinstimmt , aber ich habe die URI- Nomenklatur von admin/auths/new befolgt.

Ich habe die relevanten Bits (z. B. DISABLE_REGISTRATION = false und ENABLE_REVERSE_PROXY_AUTHENTICATION = true ) in meiner benutzerdefinierten Datei / conf / app.ini festgelegt, und es scheint nichts im Spickzettel oder in den Authentifizierungsabschnitten zu geben der Dokumentation zu diesem Problem und kein Ort, an dem der Umleitungs-URI über die Weboberfläche festgelegt werden kann.

Im Idealfall wird dies geschlossen, nachdem die Dokumentation aktualisiert wurde, die einen Eintrag für die häufig gestellten Fragen zur OAuth2-Konfiguration enthält, und die Konfiguration "bekannt gut" wird in den Dokumenten aufgezeichnet (idealerweise mit den anderen Authentifizierungsmaterialien).

Ich kann die Dokumente PR, ich muss nur wissen, warum diese scheinbar geradlinige Sache problematisch ist.

Screenshots

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

Serverdetails

  • Gitea-Version (oder Commit-Referenz): 1.4.0 + 3-g641d481c
  • Git-Version: 2.11.0
  • Betriebssystem: Debian GNU / Linux 9 (Stretch)
  • Datenbank (verwenden Sie [x] ):

    • [] PostgreSQL

    • [x] MySQL (Mariadb)

    • [] MSSQL

    • [] SQLite

  • Können Sie den Fehler unter https://try.gitea.io reproduzieren:

    • [] Ja (Beispiel-URL angeben)

    • [x] Nein

    • [ ] Nicht relevant

  • Log:
    2018/04/04 22:19:25 [I] Protokollmodus: Datei (Trace)
    2018/04/04 22:19:25 [I] XORM-Protokollmodus: Datei (Trace)
    2018/04/04 22:19:25 [I] Cache-Dienst aktiviert
    2018/04/04 22:19:25 [I] Sitzungsdienst aktiviert
    2018/04/04 22:19:25 [I] Git Version: 2.11.0
    2018/04/04 22:19:25 [T] Tun: CheckRepoStats
    2018/04/04 22:19:25 [T] Tun: ArchiveCleanup
    2018/04/04 22:19:25 [T] Doing: DeletedBranchesCleanup
    2018/04/04 22:19:25 [I] Ausführungsmodus: Produktion
    2018/04/04 22:19:25 [I] Hören: https://0.0.0.0 :
    2018/04/04 22:19:25 [I] LFS-Server aktiviert
    2018/04/04 22:19:31 [D] Sitzungs-ID:cde9
    2018/04/04 22:19:31 [D] CSRF-Token:==
    2018/04/04 22:19:31 [D] Vorlage: user / auth / signin
    2018/04/04 22:19:32 [D] Sitzungs-ID:cde9
    2018/04/04 22:19:32 [D] CSRF-Token:==
    2018/04/04 22:19:33 [D] Sitzungs-ID:cde9
    2018/04/04 22:19:33 [D] CSRF-Token:==
    2018/04/04 22:19:33 [... router / user / auth.go: 407 handleOAuth2SignIn ()] [E] UserSignIn: Ungültiges Token vom Anbieter empfangen
    2018/04/04 22:19:33 [D] Vorlage: Status / 500
kinquestion

Hilfreichster Kommentar

Auf was ist deine ROOT_URL eingestellt? Ich hatte das gleiche Problem (einschließlich des etwas irreführenden Fehlers "Ungültiges Token empfangen ..."), fand jedoch heraus, dass meine ROOT_URL auf http: // foo gesetzt war , während ich sie bereits über Apache httpd (https) auf https verschoben hatte. das ist umgekehrt Proxy zu Gitea). Das Ändern meiner ROOT_URL in https: // foo hat das Problem behoben

Alle 3 Kommentare

Auf was ist deine ROOT_URL eingestellt? Ich hatte das gleiche Problem (einschließlich des etwas irreführenden Fehlers "Ungültiges Token empfangen ..."), fand jedoch heraus, dass meine ROOT_URL auf http: // foo gesetzt war , während ich sie bereits über Apache httpd (https) auf https verschoben hatte. das ist umgekehrt Proxy zu Gitea). Das Ändern meiner ROOT_URL in https: // foo hat das Problem behoben

Schließen, bitte wieder öffnen, wenn Sie dies noch erleben.

Ich bin hierher gekommen, weil ich dies erlebt habe und festgestellt habe, dass die Antwort von @hnsr mein Problem gelöst hat.
Ich habe jedoch keine Möglichkeit gefunden, meine ROOT_URL vom Frontend aus zu ändern (es sollte wirklich eine geben).

War diese Seite hilfreich?
3 / 5 - 1 Bewertungen