如何获得正确的 Auth0 不记名令牌?
How to get correct Auth0 bearer token?
我想为我的 node.js 应用获取 Auth0 不记名令牌。
我通过这样做获得了不记名令牌:
curl https://myproject.eu.auth0.com/oauth/token --data "client_id=ID&client_secret=SECRET&type=web_server&grant_type=client_credentials"
哪个返回了我:
{
"access_token": *BEARER TOKEN*,
"token_type": "Bearer"
}
不过,如果我在 Auth header 中将那个令牌与邮递员一起使用,它会告诉我:
Invalid token
。那么我该如何获得正确的不记名令牌呢?
我的服务器是这样的:
const koa = require('koa');
const route = require('koa-route');
const jwt = require('koa-jwt');
const testRoute = require('./testRoute');
const app = koa();
//Copy pasted those values from my auth0 dashboard
const authentication = jwt({
secret: new Buffer(*CLIENT_SECRET*, 'base64'),
audience: *YOUR_CLIENT_ID*
});
app.use(authentication);
app.use(route.get('/test', testRoute));
app.listen(3000);
我按照本指南进行了设置:https://auth0.com/docs/quickstart/backend/nodejs/。
access_token
是一个不透明的令牌,而不是您的应用程序期望的 JWT。如果您在调用 /oauth/token
时使用 scope=openid
,您也会返回一个 id_token
,这是您的 API 应该接受的 JWT。
您可以在此处阅读有关 scope
参数如何在 Auth0 上下文中工作的更多信息:https://auth0.com/docs/scopes
我想为我的 node.js 应用获取 Auth0 不记名令牌。
我通过这样做获得了不记名令牌:
curl https://myproject.eu.auth0.com/oauth/token --data "client_id=ID&client_secret=SECRET&type=web_server&grant_type=client_credentials"
哪个返回了我:
{
"access_token": *BEARER TOKEN*,
"token_type": "Bearer"
}
不过,如果我在 Auth header 中将那个令牌与邮递员一起使用,它会告诉我:
Invalid token
。那么我该如何获得正确的不记名令牌呢?
我的服务器是这样的:
const koa = require('koa');
const route = require('koa-route');
const jwt = require('koa-jwt');
const testRoute = require('./testRoute');
const app = koa();
//Copy pasted those values from my auth0 dashboard
const authentication = jwt({
secret: new Buffer(*CLIENT_SECRET*, 'base64'),
audience: *YOUR_CLIENT_ID*
});
app.use(authentication);
app.use(route.get('/test', testRoute));
app.listen(3000);
我按照本指南进行了设置:https://auth0.com/docs/quickstart/backend/nodejs/。
access_token
是一个不透明的令牌,而不是您的应用程序期望的 JWT。如果您在调用 /oauth/token
时使用 scope=openid
,您也会返回一个 id_token
,这是您的 API 应该接受的 JWT。
您可以在此处阅读有关 scope
参数如何在 Auth0 上下文中工作的更多信息:https://auth0.com/docs/scopes