我们有一个客户目前使用ERP系统来存储他们的所有客户。这是一个封闭的源ERP,因此无法更改身份验证流程。现在他们有一个身份验证API,各种其他API使用,但开发速度很慢。他们现在面临着一个挑战,他们需要带来更多的系统,并且由于他们的API与其他系统紧密耦合,因此需要时间。他们绝对不想避免其他部门用他们自己的身份验证来创建应用程序,因为他们无法跟上他们的步伐。
他们不想为所有客户系统保留SSO,但可以更好地控制哪些用户可以做什么。
我一直在阅读Azure Active Directory B2C,它看起来真的很棒。我们对内部应用程序使用Azure Active Directory(AAD)身份验证,并且大部分时间都可以正常运行。
这是两部分问题:
是否可以使用Azure AD B2C
并仍然将用户留在ERP中?例如,如果我们可以将Azure AD B2C
连接到一个响应用户数据的服务,如果该用户存在,则认为凭据是正确的。
问题的扩展1.当前的ERP系统为用户提供了访问令牌和刷新令牌。在这种情况下,仍然可以使用Azure Active Directory B2C吗?基本上添加我们自己的身份提供程序,它将在需要时刷新访问令牌。这是一个可行的事情,是否有任何指南来创建它?也许IdentityServer4可以使用或者可以简化吗? http://openid.net/developers/certified/#OPLibs https://github.com/IdentityServer/IdentityServer4
鉴于他们网站上的这些话,我认为它应该有效:
支持所有平台和开放标准
https://azure.microsoft.com/en-us/services/active-directory-b2c/
答案 0 :(得分:1)
是的,有可能。正如米罗斯拉夫所说,你应该使用custom policies。这需要增加自定义策略,这可能会有一个陡峭的学习曲线,但基本上你会采用starterpack(参见getting started)并修改用户之旅以不写入B2C目录(基本上删除此步骤) 。相反,您可以呼叫用户所在的任何地方。此调出可以是OIDC标识提供程序或REST API,它们是使用技术配置文件指定的。