Podpora PKCE ?
-
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:
POST https://login.szn.cz/api/v1/oauth/token
Content-Type: application/x-www-form-urlencoded
Accept: application/jsonclient_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.
-
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 -
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?
-
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.
-
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.
-
Tento příspěvek je vymazán. -
Tento příspěvek je vymazán.
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