在不迁移用户的情况下使用 Azure Active Directory B2C

Use Azure Active Directory B2C without migrating users

我们有一个客户目前使用 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/#OPLibs https://github.com/IdentityServer/IdentityServer4

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

Support all platforms and open standards

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

是的,这是可能的。正如 Miroslav 提到的,您应该使用 custom policies. This requires a ramp up on custom policies which can have a steep learning curve, but essentially you would take the starterpack (see getting started) 并且您将修改 userjourney 以不写入 B2C 目录(基本上删除此步骤)。相反,您会向用户所在的任何地方发出呼叫。此调用可以是 OIDC 身份提供者或 REST API,它们是使用技术配置文件指定的。