合并Azure登录

时间:2016-03-09 22:32:46

标签: azure azure-web-sites azure-mobile-services

我是azure的新手(习惯于"默认" ASP.NET应用程序)并给它一些尝试我了解到: a。)添加移动登录非常容易(使用FaceBook,Twitter,MS-Account ......) b。)我无法看到存储此数据的任何数据库(用户ID如此)

我的需求如下:

  • 使用Win10 Universal / Mobile应用程序的用户登录FB,...(到目前为止工作)
  • 使用这些用户(通过ID等)为他们分配自定义数据库条目(个人资料等)
  • 将用户分配(通过某种管理界面)角色(用于权限)
  • 合并不同的登录信息(让同一用户登录不同的提供商=

解释这个想象一个论坛(由应用程序驱动(UWP,Android,...)):

  • 用户通过Facebook登录。
  • 在(示例)10个经过审核的帖子之后,他将能够无需审核即可撰写帖子。 (分配给角色)
  • 可以手动将用户添加到角色(版主)
  • 最后并非最不重要的是,如果首选服务不可用(一些公司网络的例子限制Facebook访问) - 用户应能够(例如)谷歌使用" HIS帐户"

我理解"合并"可能需要在两个提供商都可用时完成。 类似于 - "您已使用FB登录 - 您希望将Google登录添加到您的帐户 - 如果是,请在使用FB登录时立即登录Google ...

两点:  1.我不想拥有"用户名/密码" (仅限社交登录)  2.我想存储用户电子邮件(用于通知目的) - 如果可用,则从社交提供者处使用 - 或手动输入

是否可以使用" Azure Mobile"或者更好的是创建一个" Web App"并添加(以某种方式)添加"移动功能" (登录,推送通知..)到它?

1 个答案:

答案 0 :(得分:1)

是的,你绝对可以这样做。令牌信息(相当于在Azure门户中的身份验证/授权设置刀片中设置身份验证时请求的声明)可在应用程序的/.auth/me端点上获得。它也可以在内部使用 - 对于ASP.NET,它可以是MobileAppUser类。对于使用[Authorize]装饰器修饰的ASP.NET TableController,这是请求的IPrincipal。

您可以调整表格控制器存储的信息。有FieldEngineer sample on GitHub注释的示例代码。