android - Active Directory B2C 可以使用本机 Facebook 应用程序而不是 webview 吗?
问题描述
我们构建了两个使用 AADB2C 的原生应用程序(1 个 Android 和 1 个 iOS)。当用户需要登录/注册时,他们会通过一系列 AADB2C webviews。我们还通过在 AADB2C 中配置 Facebook 应用程序启用了通过 Facebook 的社交登录。这很有效,就像用户可以使用 Facebook 登录一样,但这也是在 web 视图中完成的,这意味着他们需要在此处明确输入登录名和密码。
有没有办法利用原生 Facebook 登录?这将使登录和注册更加用户友好?
顺便说一句:Firebase Auth 通过从 web 视图触发 Facebook 应用程序来实现这一点 - 所以它应该是可能的。
解决方案
您可以使用带有 AD B2C 的 ROPC 流来实现相同的目的。
资源所有者密码凭证 (ROPC) 流程是一个 OAuth 标准身份验证流程,其中应用程序(也称为依赖方)交换有效凭证(例如用户 ID 和密码)以获取 ID 令牌、访问令牌和刷新令牌。
这是相同的公告:
https://twitter.com/codemillmatt/status/994927109503160320?s=21
在 Azure Active Directory (Azure AD) B2C 中,支持以下选项:
- Native Client:身份验证期间的用户交互发生在代码在用户端设备上运行时。该设备可以是在原生操作系统(如 Android)中运行或在浏览器(如 JavaScript)中运行的移动应用程序。
- 公共客户端流程:仅由应用程序收集的用户凭据在 API 调用中发送。不发送应用程序的凭据。
- 添加新声明:可以更改 ID 令牌内容以添加新声明。
参考:
https://docs.microsoft.com/en-us/azure/active-directory-b2c/configure-ropc
希望能帮助到你。
推荐阅读
- python - MinMaxScaler 如何工作 - 按行缩放或针对整个数据集进行缩放?
- excel - 在两个不同的列上使用匹配返回行#
- mysql - 如何在带有 mysql 的 laravel 项目中使用 laravel-activitylog-mongodb?
- node.js - 不记名令牌未定义但在授权标头中发送
- excel - 如何计算单元格中比给定数字长的单词?
- javascript - 点击和恢复开始倒计时 - Javascript
- r - 在 R 中使用 grepl 循环
- docker - 从容器外部连接到我的 docker SQL 数据库
- python - 类型错误:参数“细胞”(
我正在使用 TensorFlow.Keras 并为时间序列数据分类任务编写序列到序列模型。在这个模型中,我在编码器部分使用多层 BiLSTM,在解码器部分使用多层堆叠
- causality - 因果影响:前后期间的长度?