我使用Google Flutter有一个移动的开发的前端,我使用Azure App Services作为后端。
如何处理登录和身份验证,以便可以使用Easy Auth调用Azure AD B2C,Easy Auth是Azure应用服务的一部分。我还没有看到Flutter的SDK。Flutter不使用JavaScript,所以我不能像在其他Azure示例中看到的那样使用JavaScript来调用它。
有什么想法吗我认为很多其他人会面临同样的问题,因为Azure是如此受欢迎。我想使用谷歌Firestore,但我不能,因为它不符合HIPAA。
2条答案
按热度按时间ijxebb2r1#
由于它是一个本地应用程序实现,因此您可以使用ROPC(资源所有者密码凭据)流为REST API获取AAD B2C的令牌。您可以像这样创建一个策略:https://learn.microsoft.com/en-us/azure/active-directory-b2c/configure-ropc
然后让应用程序进行REST API调用以获取令牌:https://learn.microsoft.com/en-us/azure/active-directory-b2c/configure-ropc#test-the-user-flow
App服务需要设置为B2C作为其身份验证提供者:启用身份验证。在此之后,在身份验证提供程序列表下选择“Azure Active Directory”,这将打开一个新的配置刀片,选择“高级”并注意必填字段,包括客户端ID和颁发者Uri -客户端密码和允许的令牌受众是可选字段。转到下一步,从B2C收集应用程序客户端ID和颁发者URI值。
创建新的B2C应用程序。从Azure门户(可选,您可以打开单独的浏览器选项卡或新的浏览器会话,保持以前的刀片打开/可用),转到您的B2C租户刀片,并选择应用程序,然后选择+添加以创建新应用程序。在新建应用程序刀片中,为应用程序指定一个友好的名称,选择“是用于Web应用程序/ Web API”选项,在“回复URL”部分中,输入您在步骤2中创建的完整Azure网站名称,并将其追加为:/.auth/login/aad/callback.举例来说:https://myAppSecuredByB2C.azurewebites.net/.auth/login/aad/callback的
选择创建。
收集B2C应用程序ID。成功创建应用程序后,返回到B2C管理门户应用程序刀片,找到新创建的应用程序并打开配置文件以收集应用程序ID -复制此B2C应用程序ID -这将用于完成Azure功能配置。
收集B2C OpenID Connect元数据URL端点。转到顶级Azure AD B2C刀片,选择“用户旅程”,选择“登录注册”策略(或您创建的任何其他策略),然后选择“运行用户流”按钮-刀片打开后,复制Openid元数据端点
返回到App Service的身份验证刀片。选择:Azure Active Directory设置-在客户端ID属性中输入B2C应用程序ID。类似地,将B2C Open ID Connect元数据URL输入Issuer URI属性。选择“确定”以完成配置。
rfbsl7qr2#
尝试使用aad_oauth Flutter包进行AdB2C身份验证。支持Android、iOS和Web平台。
友情链接:https://pub.dev/packages/aad_oauth