【问题标题】:Use Azure Active Directory B2C without migrating users在不迁移用户的情况下使用 Azure Active Directory B2C
【发布时间】:2018-10-08 10:04:53
【问题描述】:

我们有一个客户目前使用 ERP 系统来存储他们的所有客户。这是一个封闭源 ERP,因此他们无法更改身份验证流程。现在他们有一个身份验证 API,其他各种 API 都在使用,但开发速度很慢。他们现在面临的挑战是他们需要引入更多系统,并且鉴于当前的结构,这需要时间,因为他们的 API 与其他系统紧密耦合。他们绝对不会仅仅因为跟不上他们的步伐,就避免其他部门使用自己的身份验证创建应用程序。

他们不想为所有客户系统保留 SSO,但可以更好地控制允许哪些用户执行哪些操作。

我一直在阅读有关 Azure Active Directory B2C 的信息,它看起来真的很棒。我们对内部应用程序使用 Azure Active Directory (AAD) 身份验证,它在大多数情况下都能完美运行。

这是两部分的问题:

  1. 是否可以使用Azure AD B2C 并仍将用户保留在 ERP 中?例如,如果我们可以连接Azure AD B2C 向服务发送请求,如果该用户存在且凭据正确,则该服务会使用用户数据进行响应。

  2. 问题 1 的扩展。当前的 ERP 系统为用户提供访问令牌和刷新令牌。在这种情况下是否仍然可以使用 Azure Active Directory B2C?基本上添加我们自己的身份提供者,它将在需要时刷新访问令牌。这是一件可行的事情吗?在创建这个过程中是否有任何指南?也许可以使用 IdentityServer4 或者可以简化它? http://openid.net/developers/certified/#OPLibshttps://github.com/IdentityServer/IdentityServer4

鉴于他们网站上的这些文字,我认为它应该有效:

支持所有平台和开放标准

https://azure.microsoft.com/en-us/services/active-directory-b2c/

【问题讨论】:

    标签: c# azure azure-active-directory azure-ad-b2c


    【解决方案1】:

    是的,这是可能的。正如 Miroslav 提到的,您应该使用 custom policies。这需要增加可能具有陡峭学习曲线的自定义策略,但基本上您将使用 starterpack(请参阅getting started)并且您将修改 userjourney 以不写入 B2C 目录(基本上删除此步骤)。相反,您将呼叫用户所在的任何位置。此调用可以是 OIDC 身份提供者或 REST API,它们是使用技术配置文件指定的。

    【讨论】:

    • 谢谢!自定义策略也可以处理刷新令牌吗?如果是,是否有任何代码示例?
    • 我不明白这个问题。刷新令牌是为了什么?
    • Azure AD B2C 能否处理刷新访问令牌,还是必须在应用程序级别完成?
    • Azure AD B2C 是一个令牌颁发者,这意味着它可以颁发刷新令牌。若要使用刷新令牌来获取新的 ID 或访问令牌,应用程序需要调用 Azure AD B2C。换句话说,刷新令牌是在应用程序级别完成的,因为应用程序需要发出请求。
    猜你喜欢
    • 2016-04-17
    • 2023-02-22
    • 2019-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多