春季启动时的Oauth2问题

时间:2016-07-25 01:36:47

标签: spring spring-security spring-boot spring-security-oauth2

已经实现了oauth2,只要我在授权服务器配置中使用clients.inMemory它就可以正常工作。当我将其更改为clients.jdbc并提供数据存储时,获取oauth2令牌的第一步成功。使用该令牌的第二步总是失败。即使对于内存代码片段,这两个步骤都有效。所以使用jdbc,我无法达到我的休息终点。我收到错误。以下作品

curl -u ksclient:top_secret -X POST http://localhost:8080/oauth/token -H "Accept:application/json" -d "username=mickey&password=cheese&grant_t
ype=password"

结果:

{"access_token":"4e6a6ff2-87e9-428d-9a80-13f0300a7344","token_type":"bearer","expires_in":43016,"scope":"read write"}

然后使用它的第二步失败

curl http://localhost:8080/oauth2/hello -H "Authorization: Bearer 4e6a6ff2-87e9-428d-9a80-13f0300a7344"

错误:

{"error":"invalid_token","error_description":"Invalid access token: 4e6a6ff2-87e9-428d-9a80-13f0300a7344"}

有趣的是,在mysql端,“oauth_client_details”的表确实有数据,而“oauth_client_token”/“oauth_access_token”的表从不有任何记录。 这是我的代码的链接 https://github.com/ksachdev1/springbootlearning

0 个答案:

没有答案