如何使用Auth0管理API对Web应用进行身份验证?

时间:2018-07-17 18:13:33

标签: authentication oauth auth0

我已经为此奋斗了好几天,但无法弄清楚。我正在尝试使用Auth0对Node应用进行身份验证。当我将RS256令牌与jwt.verify(token, AUTH0_SECRET, callback)一起使用时,从我的Node应用程序中,我不断收到“无效算法”。我的应用程序设置为使用RS256,并且我验证了令牌实际上是在使用RS256。那没有道理,但我想不出为什么会收到该错误,因此我尝试在身份验证过程中手动卷曲方式;

在浏览器中访问授权URL:

https://MY_DOMAIN.auth0.com/authorize?
  audience=https://MY_DOMAIN.auth0.com/api/v2/&
  scope=name profile email openid&
  response_type=code&
  client_id=MY_CLIENT_ID&
  redirect_uri=http://localhost:3000/callback&
  state=ARBITRARY_VALUE

重定向到回调:

http://localhost:3000/callback?code=MY_CODE&state=ARBITRARY_VALUE

令牌交换代码:

curl --request POST \
  --url 'https://MY_DOMAIN.auth0.com/oauth/token' \
  --header 'content-type: application/json' \
  --data '{"grant_type":"authorization_code","client_id": "MY_CLIENT_ID","client_secret": "MY_CLIENT_SECRET","code": "MY_CODE","redirect_uri": "http://localhost:3000/callback"}'

响应:

{"access_token":"MY_ACCESS_TOKEN","expires_in":86400,"token_type":"Bearer"}

调用API:

curl --request GET \
  --url https://MY_DOMAIN.auth0.com/api/v2/users \
  --header 'authorization: Bearer MY_ACCESS_TOKEN' \
  --header 'content-type: application/json'

获取无效的令牌响应:

{"statusCode":401,"error":"Unauthorized","message":"Invalid token","attributes":{"error":"Invalid token"}}

我在做什么错?我已经尝试了几次,但除了401或404之外,我一无所知。

当我在应用中将手动生成的access_tokenjwt.verify一起使用时,我仍然会收到“无效算法”响应。

0 个答案:

没有答案