我正在构建一个如下工作的应用程序:
作为唯一一个后端,我有一个使用 Symfony Framework 2.3.2 + FOSRESTBundle 构建的 REST API(仅限 JSON)。
此 API 最初将有两个客户端:
- 在 Android 设备上运行的应用程序;
- 使用 AngularJS 构建的 Web 应用程序,运行在与 API 相同的服务器上。
我将注册可以使用我的应用程序的公司,每个公司都可以使用他们的角色注册自己的用户,这些用户只能通过通常的电子邮件/密码表单访问网络应用程序。
这些公司还可以注册有限数量的 Android 设备,通过其 IMEI(移动设备的国际唯一识别码)识别它们,这些设备将使用它们的 IMEI 对 API 进行身份验证。
Android 设备只能访问有限的资源集,而 Web 应用程序用户可以访问其角色允许的任何资源。
我需要:
- 一种安全统一的方式,通过电子邮件/密码对 Web 应用用户进行身份验证,通过 IMEI 对 Android 设备进行身份验证;
- 限制他们可以访问的资源。
观察:
- 我在 API 服务器中有 HTTPS。
关于如何实现这一目标的任何想法?