如何授予外部合作伙伴/公司对Laravel Rest API的访问权限?

时间:2019-11-19 06:10:19

标签: php laravel oauth

我们公司有一个API(基于Laravel构建),可根据制造商的医疗品牌为国家/地区提供某些医疗数据。

我们目前为公司开发了自己的应用程序,可用于监视数据,生成报告,在数据库中编辑公司信息等。我们在API中使用OAuth 2.0。该应用程序具有一个包含电子邮件和密码的登录表单(我们使用OAuth 2.0 Password Grant作为令牌),或者用户可以使用他们的手机或身份证进行登录(使用Laravel的Personal access token作为令牌)。

我们所有的API端点均受API认证的中间件和用户角色中间件的保护。

几天前,我们收到了一家公司(他们是我们的合作伙伴,我们知道他们)的请求,该公司希望在不使用我们的应用程序的情况下使用我们的API,这让我开始思考哪种oAuth流程是合适的。我们不知道他们的应用程序是什么样子(可能很旧)。我们只知道它正在PHPApache上运行。

我们在数据库中存储了他们的制造商数据,并且我为他们创建了OAauth客户端,该客户端既不是个人访问客户端也不是密码客户端,因为它们在我们的数据库中没有用户帐户。我知道我不能使用Authorization Code Grant,因为他们在我们的数据库中没有用户帐户,这导致了我的下一个问题:

  1. 对于这种访问方式,我需要使用Client Credentials Grant吗?我已经读到这是用于SPA的。如果是,我是否必须重新创建API端点,或者还有其他事情要做?
  2. 如果我使用Client Credentials Grant,因为没有经过身份验证的用户,是否需要开始实现作用域?
  3. 我当前的API端点是否也需要使用范围?

0 个答案:

没有答案
相关问题