azure - 我可以使用同一个 Azure 移动应用程序进行不同类型的身份验证吗?

标签 azure authentication facebook-authentication google-authentication azure-mobile-services

我可以在 Azure 移动应用程序中配置不同的身份验证提供程序:Google、Facebook、Twitter、Microsoft 和 AAD。

但是我怎样才能将它们一起使用呢?我希望用户能够选择他想要使用的提供商,但在下拉列表中我只能选择一项操作(请求未经过身份验证时采取的操作),将用户转发给 Google 或 Facebook(或其他提供商)。

我应该为每个提供商创建移动应用程序吗?

最佳答案

也许您最好的想法是使用另一个设施,例如 Auth0用于身份验证弹出窗口。使用相同的客户端 ID、客户端 key 和所有四个社交客户端(加上 AAD)的范围配置 Auth0 和 Azure 移动应用。

要实现登录,请执行 Auth0 操作 - IdP 身份将位于 Auth0 返回的配置文件中。然后,您可以使用提供程序以及 IdP 返回并由 Auth0 在身份数组中提供的 access_token 在客户端流中调用相应的 Azure 移动应用客户端 SDK 登录例程(loginLoginAsync 或其他)。

在 IdP 级别配置身份提供商时,请确保在重定向 URL 中包含 Auth0 回调和 Azure 应用服务/.auth/provider/login/callback。

我将在我的博客上发布一篇博文,网址为 http://shellmonger.com几天后讨论这个主题,因为它有点复杂。

关于azure - 我可以使用同一个 Azure 移动应用程序进行不同类型的身份验证吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36071406/

相关文章:

azure - 使用 ARM 模板将 Azure Web App 连接到 vNet

azure - 如何判断Azure存储是Page类型还是Block Blob类型?

php - 如何实现隐式注销?

linux - 无法使用特定用户运行脚本

facebook - 签名请求 json 字符串不完整?

facebook - 让身份验证对话框不再那么令人生畏

azure - 创建 1000 多个 Azure 服务总线 session

Azure函数应用程序-在执行和间歇性运行的旧代码之间共享全局变量

javascript - 我应该如何将用户的登录状态传递到我的 Ember.js 应用程序?