Fórum pro vývojáře
    • Kategorie
    • Nepřečtené
    • Nejnovější
    • Populární
    • Svět
    • Přihlásit se

    Podpora PKCE ?

    Naplánováno Připnuto Uzamknuto Přesunuto OAuth přihlášení přes Seznam
    7 Příspěvky 4 Přispěvatelé 4.3k Zobrazení
    Načítání více příspěvků
    • Od nejstarších po nejnovější
    • Od nejnovějších po nejstarší
    • S nejvíce hlasy
    Odpovědět
    • Odpovědět jako Téma
    Přihlásit se pro odpověď
    Toto téma bylo odstraněno. Jen uživatelé s oprávněním správy témat ho mohou vidět.
    • L Offline
      Lukáš Langr
      naposledy upravil

      Dobrý den,
      dle diskuze https://napoveda.seznam.cz/forum/threads/173207/1 by PKCE mělo být podporováno. Bohužel se mi však nedaří vygenerovat access token za použití code_challange / code_verifier.

      Zde záznam z pokusu:

      GET https://login.szn.cz/api/v1/oauth/auth?response_type=code&client_id=753a59c0f2ba3a4b3164a6c1ded2ba6aaf0fe2785cc48f7f&redirect_uri=https%3A%2F%2Fwww.elitedate.loc%2Foauth%2Flogin%2Fprocess%2Fseznam&scope=identity&code_challenge=U3VZ9Rvcr-JWB_GfLPv-ZohRLI0ErTl42-jwmH1qyQg&code_challenge_method=S256

      POST https://login.szn.cz/api/v1/oauth/token
      Content-Type: application/x-www-form-urlencoded
      Accept: application/json

      client_id=753a59c0f2ba3a4b3164a6c1ded2ba6aaf0fe2785cc48f7f&redirect_uri=https%3A%2F%2Fwww.elitedate.loc%2Foauth%2Flogin%2Fprocess%2Fseznam&grant_type=authorization_code&code=T_WsXhtnJTBNCusnBoXEEsekaO&code_verifier=yUgsksN0ysBlKdS193V73cCeuhh1GKuoWBdfM7KHE4qaa4cd

      400 Bad Request {"error": "invalid_client"}

      Code challange jsem generoval zde https://tonyxu-io.github.io/pkce-generator/ , tak předpokládám, že v tom problém nebude.

      Když vynechám z přihlašovací URL code_challenge=&code_challenge_method=, tak následně s client_secret nemám problém získat access_token. Takže potíž je jen s tím použitím PKCE.

      Podařilo se někomu zprovoznit PKCE? Dělám něco špatně?

      Předem děkuji za pomoc.

      1 odpověď Poslední odpověď Odpovědět Citovat 0
      • Ondřej ŽáraO Offline
        Ondřej Žára
        naposledy upravil

        Dobry den,

        nase implementace PKCE bohuzel neodstranovala rovnitka pri vypoctu hashe code_challenge (viz diskuze u https://napoveda.seznam.cz/forum/threads/173207/1). Nyni by to jiz melo fungovat -- prosim, zkuste to znovu a dejte vedet.

        S pozdravem
        Ondrej Zara

        L 1 odpověď Poslední odpověď Odpovědět Citovat 0
        • L Offline
          Lukáš Langr @Ondřej Žára
          naposledy upravil

          Mohu potvrdit, že nyní mi již projde kontrola code_challange / code_verifier. Ale i přestože použiji PKCE, tak je stále vyžadováno uvedení parametru client_secret se správnou hodnotou. Pokud tento parametr neuvedu, tak opět obdržím "invalid_client", i přestože mám správně PKCE.

          PKCE jsem plánoval použít v mobilní aplikaci, kde nelze bezpečně uchovávat client_secret. Vím, že PKCE není plnohodnotná náhrada za client_secret, ale spíše nadstavba. Nicméně jsem nabyl dojmu, že pro veřejného klienta je doporučený kompromis PKCE bez client_secret.

          Jaký postup pro Seznam Oauth je doporučený pro mobilního klienta?

          Ondřej ŽáraO 2 odpovědí Poslední odpověď Odpovědět Citovat 0
          • Ondřej ŽáraO Offline
            Ondřej Žára @Lukáš Langr
            naposledy upravil

            Dobrý den,

            správně jste popsal současný stav, kdy je client_secret vyžadován i při použití PKCE. Pokud vám to nečiní problém, zkuste jej zatím posílat (i když je jasné, že v případě mobilní aplikace je jeho "bezpečnost" na zhruba stejné úrovni, jako client_id).

            Zkusíme zvážit, zdali by se při PKCE mohl client_secret neověřovat (osobně mi to dává smysl), nicméně taková změna -- byť implementačně triviální -- asi chvíli potrvá. Dám vědět, pokud se tak stane.

            1 odpověď Poslední odpověď Odpovědět Citovat 1
            • Ondřej ŽáraO Offline
              Ondřej Žára @Lukáš Langr
              naposledy upravil

              @Lukáš-Langr

              Dobrý den,

              posunuli jsme se nyní do stavu, který navrhujete -- pokud použijete PKCE, není nutné posílat client_secret. Budete laskav, pokud to ozkoušíte a ověříte.

              1 odpověď Poslední odpověď Odpovědět Citovat 0
              • Rektor KampusR Offline
                Rektor Kampus
                naposledy upravil

                Tento příspěvek je vymazán.
                1 odpověď Poslední odpověď Odpovědět Citovat 0
                • ? Offline
                  Bývalý uživatel
                  naposledy upravil

                  Tento příspěvek je vymazán.
                  1 odpověď Poslední odpověď Odpovědět Citovat 0

                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                  With your input, this post could be even better 💗

                  Registrovat Přihlásit se
                  • První příspěvek
                    Poslední příspěvek