首页 文章

用于API服务器和移动应用程序的OAuth 2.0

提问于
浏览
0

我有一台服务器和一个移动应用程序 . 服务器提供RESTful API,移动应用程序使用此API . 我想使用OAuth 2.0,以便只有授权用户才能获得响应,换句话说,当用户登录时,移动应用会获取访问令牌,以便它可以使用此令牌进行API调用 .

通常,OAuth用于资源所有者(如我),资源服务器(如Facebook)和客户端(某些第三方应用程序)存在的场景中 . 就我而言,只有服务器和移动应用程序 . 如果需要获取访问令牌,我想使用我的用户的用户名和密码 . 我的问题如下:

  • 我不确定我的服务器和我的应用程序对应的角色是什么?

  • 我应该实施哪种流程(和/或授权授权)?

3 回答

  • 1

    如果您需要使用OAuth 2对客户端进行身份验证,则可以使用自己的授权服务器执行此操作 . 有许多可用的开源OAuth 2服务器,如this .

    另外,我建议你看一下OAuth,它是为这个问题域而构建的 .

  • 1

    我不确定我的服务器和我的应用程序对应的角色是什么?

    根据https://tools.ietf.org/html/rfc6749#section-1.1,您的移动应用程序是 client ,托管RESTful API的服务器是 resource server .

    我应该实施什么样的流程(和/或授权授权)?

    你可能对authorization code grant感兴趣

    ...

    正如@rsa指出的那样,您还需要推出自己的授权服务器 .

  • 0

    移动应用程序是客户端,API服务器是资源服务器 . 由于我拥有这两个实体,我正在寻找的授权类型是2-legged "Resource Owner Password Credentials" . 我正在使用this库并进行一些小修改以使其适合我的数据库 . 谢谢您的帮助 .

相关问题