2017-03-24 42 views
0

我道歉,如果这已回答了,但我一直在寻找小时,还不太了解。这一个具体的问题,而不是“哪个是最好的”问题。用的oauth2和第一方API认证applictions

具体问题是在斜体

我创建一个RESTful API,它是在第一次意思是完全开放的。但是,该组织现在已决定创建一个第一方移动应用程序来消费和(在某种程度上)更新数据。

我调查认证框架(OAuth2用户),并且是不知道的OAuth2是去实现我们的目标的正确方法。而且,如果是,哪些授权授权适用于哪一组用户。

我们的目标是:

  • 为了让用户在第一方应用程序登录并创建帐户,完全通过OAuth的2个提供商特(Twitter,Facebook,谷歌)。这些用户可以通过第一方应用程序访问最大的数据集。
  • 为用户分配不同的角色(管理员,主持人等)。
  • 允许其他应用程序注册,接收令牌凭证,并且具有有限的写入访问权限或扩展的数据访问权限。这将打开他们创建第三方应用程序或研究系统。
  • 最后,我们希望保留一些完全开放的数据,而不需要验证。

因此,我正确地假设我们要设置oAuth2 *服务器*(授权和资源服务器)?

如果是这样,其授权拨款适用于上述情况?

最后一个问题:对于使用第一方应用程序的用户,应用程序是否负责将其登录并保留其访问凭据? API服务器提供NO html,并且是100%RESTful。它需要提供登录表单吗?

感谢您的任何帮助。

回答

1

如果您需要在两个认证授权用户的API基于不同的OAuth2社会登录,你需要某种形式的API服务器或服务,在那里你可以定义用户和组/角色和范围根据您的规则,用户可以使用它们。

一些这方面的云托管的选项有:

如果与服务之上整合如那些,可以让服务打理对用户进行身份验证,并确保每次用户呼叫都会先检查服务,然后再执行任何操作。