Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Wrong redirect when using self-hosted Kratos

Aperta
#565 4 commenti 3 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
38/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
nextjs, typescript

Direzione di ricerca

Inizia in packages/nextjs/src/utils/rewrite.ts, nella logica di matching collegata, quindi riproduci un flusso usando la configurazione Kratos self-hosted e domini di autenticazione e applicazione differenti. Determina il comportamento di reindirizzamento previsto per gli URL UI configurati, aggiungi o aggiorna una copertura mirata se il repository la fornisce e verifica che quel flusso non ricada più erroneamente sull’URL del backend.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Needs Triage

Hello!

I'm not sure if I am doing something wrong, but it seems there is an assumption here that may not be correct in cases of self-hosted Kratos:
https://github.com/ory/elements/blob/fdabadf8cb2e0ec4fd9286a5277516f8fd69aa0c/packages/nextjs/src/utils/rewrite.ts#L32C1-L32C62

In my Kratos config, I have:

kratos:
  kratos:
    config:
      serve:
        public:
          base_url: https://auth.example.com
          cors:
            allowed_origins:
              - http://localhost:3042
              - https://auth.example.com

      selfservice:
        default_browser_return_url: https://example.com
        allowed_return_urls:
          - http://localhost:3042/*
          - https://example.com/*

        methods:
          webauthn:
            config:
              rp:
                id: example.com
                origin: https://example.com:443/auth/login

        flows:
          error:
            ui_url: https://example.com/error
          
          settings:
            ui_url: https://example.com/settings

          recovery:
            ui_url: https://example.com/auth/recovery
          
          verification:
            ui_url: https://example.com/auth/verification
            after:
              default_browser_return_url: https://example.com
          
          logout:
            after:
              default_browser_return_url: https://example.com
          
          login:
            ui_url: https://example.com/auth/login

          registration:
            ui_url: https://example.com/auth/registration

Every time I start a flow, I get redirected to the UI URLs specified in the config, as-is.
In the linked code above, we can see it tries to match the base URL (let's say https://auth.example.com with the redirect https://example.com/auth/login). Of course, this do not match, it gives up and returns the URL as-is from the backend. It seems a bit weird to me that Ory HAS to be hosted on the same domain as the actual app handling the flows. I suppose this is something specific to the hosted version of Kratos/Ory services, and I also suppose the headers passed are supposed to mitigate this issue, but they do not have any effects in the self-hosted version, it seems.

I'm absolutely open to making a PR if required; I just want to make sure there was no oversight on my side first!

Thanks a lot.

Lingua principale
TypeScript
Stelle
187
Fork
79
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ory/elements

Tutte le issue di ory/elements

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.