Azure Mobile Services - 授权架构设计

Azure Mobile Services - Authorization architecture design

我想要一些设计或架构建议,以了解在我的应用程序中实施 authorization 的推荐方法。它是一个使用 Azure 移动服务存储数据的 angularjs 前端。

我已经完成了使用 Microsoft (MS) 帐户和其他提供商进行身份验证的过程。我想弄清楚的是如何为以下场景进行授权(而不是身份验证):

  1. 我想在特定用户登录之前将其授权为我网站的有效用户。本质上,我想创建一个帐户并将其发送给他们,或者输入他们的 MS username/email 并允许他们访问该站点。我不想只允许任何拥有 MS 帐户的人登录。
  2. 案例 1 ("admins") 中创建的用户随后可以通过我的应用程序邀请或添加其他用户。

我目前的想法是在 Azure 移动服务中创建一个 table 授权用户,其中包含用户 ID 和一个指示管理员访问权限的布尔值。我会在我的应用程序中使用此 table 来 grant/deny 某些人访问该站点。如果他们不是管理员,我也会禁用添加新用户的功能。所以我的问题是:

  1. 这是一种合理的方法还是有内置的方法来做到这一点?
  2. 是否有更好的设计模式来完成我想做的事情?
  3. 如何提前获得某人MS 帐户的正确ID? (在他们登录我的帐户之前)

任何好的样本或示例将不胜感激。

我有一个 HTML5/JS 单一寻呼机应用程序,它正在针对 Azure 移动服务进行身份验证,因此我处于完全相似的困境。但我也只希望 AUTH 用户调用我的应用程序的特定方法。

建议检查 Azure B2C 功能,这是 Microsoft 的新产品,可能会解决您的问题。

http://blogs.technet.com/b/ad/archive/2015/09/16/azure-ad-b2c-and-b2b-are-now-in-public-preview.aspx