jhipster oauth:我如何通过CURL获取access_token

时间:2015-02-02 00:15:26

标签: angularjs curl spring-boot jhipster spring-security-oauth2

我试图使用jhipster工具来创建一个带有oauth2身份验证的新项目。项目示例工作正常,我可以使用angularjs接口登录,但无法理解如何创建新用户,然后通过Curl命令行为此新用户获取访问令牌。

感谢您的帮助

1 个答案:

答案 0 :(得分:10)

步骤1:注册用户。

http://localhost:8080/#/register注册用户,并确保您可以通过网络界面登录。

步骤2:获取OAuth2令牌。

获取OAuth2令牌所需的信息:

  1. OAuth2客户端ID(请参阅application.yml)
  2. OAuth2 secret(参见application.yml)
  3. 用于注册新用户的用户名和密码 用户。
  4. 所需范围/ s
  5. 然后,从服务器获取OAuth 2令牌:

    curl -X POST -vu client:secret http://localhost:8080/oauth/token -H "Accept: application/json" -d "username=username&password=password&grant_type=password&scope=read&client_id=clientid&client_secret=secret"
    

    ..返回类似这样的内容:

    {"access_token":"7916d326-0f7f-430f-8e32-c5135a121052","token_type":"bearer","refresh_token":"2c69ca58-a657-4780-b5d8-dc965d518e9e","expires_in":1037,"scope":"read"}
    

    步骤3:在对受保护资源的调用中使用令牌:

    然后,每次调用时都必须在标题中提供auth令牌:

    curl http://localhost:8080/app/rest/books -H "Authorization: Bearer 7916d326-0f7f-430f-8e32-c5135a121052"