JWTアクセストークンのペイロードが空文字、encがA256GCMになる – 【Auth0】
vanillajsでSPAでチュートリアルしていたらログイン後のJWTアクセストークンのペイロードが空文字になっていました。
encがRS256のはずがA256GCM、ペイロードが空文字になってしまっています。
createAuth0Clientメソッドのコンストラクタでaudienceを指定してみました。
auth0Client = await auth0.createAuth0Client({ domain: config.domain, clientId: config.clientId }) ↓ auth0Client = await auth0.createAuth0Client({ domain: config.domain, clientId: config.clientId, authorizationParams: { audience: `https://${config.domain}/api/v2/`, // apiの識別子 redirect_uri: 'http://localhost:3000' // コールバックURLで設定したURL } })
await auth0Client.getTokenSilently()
で、正常なアクセストークンが取得できました。
※追記 PermissionはAPIによって定義されたものなので、ログイン後、getTokenSilently()の引数にaudienceとscope、redirect_urlなどを指定すれば正常なアクセストークンを取得することができます。
await auth0Client.getTokenSilently({ authorizationParams: { audience: `https://${config.domain}/api/v2/`, redirect_uri: 'http://localhost:3000' })
ログイン時のaudience未指定のアクセストークンは/userinfoの為だけのBearerトークンとなります。
Authentication API Explorer
Get started using Auth0. Implement authentication for any kind of application in minutes.
参考サイト
GitHub - auth0/auth0-spa-js: Auth0 authentication for Single Page Applications (SPA) with PKCE
Auth0 authentication for Single Page Applications (SPA) with PKCE - GitHub - auth0/auth0-spa-js: Auth0 authentication fo...
Auth0 と auth0-spa-js を使った独自Backend APIのアクセス制御方法の整理
JWT token is "invalid signature"?
I’m totally new to JWT and most auth. Right now I have a front-end which has Auth0’s universal login integrated. On call...
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント