gpt4 book ai didi

c# - 如何使用 ADB2C 实现身份验证端点

转载 作者:行者123 更新时间:2023-12-03 06:07:25 24 4
gpt4 key购买 nike

我似乎找不到这个常见问题的正确答案。

如何在 C# 中实现用于身份验证的 Web API 端点,这意味着在请求中接收用户名/密码,通过转发凭据来联系我的 ADB2C 服务器,获取不记名 token 并将其作为响应返回?

我设法通过使用 ROPC 用户流程获得了有效的概念证明,但这似乎 bad practice此外,我需要用户流来使用 API 连接器,而 ROPC 不支持该连接器。

最佳答案

  • B2C 是一个全局公共(public)资源,具有两个端点/authorize 和
    / token 。正如所评论的,它使用 Oauth 和 OpenID 协议(protocol)。
  • B2C 负责在/token 端点向其内部的用户提供不记名 token 。
  • 您需要实现自己的用户流程或自定义策略工作流程,它将通过/authorize 端点将 View 呈现到您的前端。
  • 最佳实践是实现身份验证代码流,除非您正在尝试设备代码流(电视)。我了解您需要让您的用户通过此工作流程登录和注册。查看更多信息:https://learn.microsoft.com/en-us/azure/active-directory-b2c/authorization-code-flow
  • 您的前端通常需要使用 MSAL 库对您使用的任何语言进行一些配置,例如:TenantId、ClientId 等(请查看上面的文档)。
  • 您可以在 B2C 后面放置一个公共(public) API 来处理自定义声明和权限(如果您不需要),那么两个 B2C 端点就足够了。
  • 您需要创建 SPN(应用注册),以便您的前端能够访问您的 B2C(从中获取 ClientId/applicationId)并重定向 URI 来配置您的前端。
  • 要创建自定义策略,您可以检查此存储库以开始登录/注册工作流程:https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack
  • 在 B2C 之前添加 API 并不是一个好的做法。

希望对大家有一点帮助。

关于c# - 如何使用 ADB2C 实现身份验证端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77183025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com