当有人去链接他们的社交媒体帐户到他们的ADB2C注册,我们有一个问题,我们无法区分失败的ADB2C登录,和取消他们的请求链接他们的社交媒体帐户。
例如,当某人试图链接他们的Facebook帐户时,像这样的URL位于“非现在”链接之后:
https://test.b2clogin.com/test.onmicrosoft.com/oauth2/authresp?error=access_denied&error_code=200&error_description=Permissions+error&error_reason=user_denied&state=StateProperties%3DeyJTSUQiOiJ4LW1zLWNwaW0tcmM6NzMyYWQzZWXtZGI4OS00YjZiLTlmYzgtYTY5NzYxZDdjMDY0IiwiVElEIjoiNTcxZWE5M2UtODQ4NS00MTMzLTlhZmItOTQwMWIyMDAwOGE5IiwiVE9JRCI6Ijc4ZDUxNTY3LTkzYTAtNDEyMy1iMHI1LTVmN2E1NzNjMzRkYSJ9#_=_我们困住了AuthenticationFailedNotification,但是在它里面,我们还没有找到区分的方法
我们检查:
if (notification.ProtocolMessage.Error == "access_denied" && notification.ProtocolMessage.ErrorDescription.StartsWith("[A SPECIFIC ERROR ID]", StringComparison.InvariantCultureIgnoreCase))然后,根据错误描述、身份验证策略和身份验证类型(社交媒体或ADB2C),为每个场景配置特定的用户流。
我们的要求是,当用户试图链接一个社交帐户时,他们必须保持登录到ADB2C,但不要实际使用它。
微软自己的例子,https://woodgrovedemo.com/的工作方式是一样的,当用户取消社交媒体帐户的链接时,用户就会被注销(例如,在链接他们的Facebook帐户时单击“now”)。
发布于 2021-08-11 13:08:14
你不能,因为这是一回事!
当用户用“Not now”按钮取消Facebook进程时,用户没有登录。你需要用户接受链接到你的应用程序,Facebook才能给你的应用发送认可和声明。如果没有此声明,用户就不会登录。
因此,您不能要求用户保持登录,因为他还没有登录。认为Microsoft的示例注销用户是错误的,因为用户从未登录过。
https://stackoverflow.com/questions/64862271
复制相似问题