我已经使用 Azure AD B2B 创建了一个 .net 应用程序,它工作正常,但是每当我尝试登录它时,它都会重定向到那里Microsoft页面,它会要求提供凭据,然后它会返回到我的应用程序。
重定向会造成用户混淆。我想在不让客户离开我们的应用程序的情况下创建完整的用户体验。不过,我们希望利用安全技术。
有没有办法使用Azure AD服务来帮助我们登录AzureAD,而无需重定向到Microsoft页面?
请指教!
是不可能的。
这是出于安全考虑。受Azure Active Directory保护的Web应用程序需要通过Microsoft证明的页面登录用户。这就是 OAuth 2.0 授权框架的工作方式。您可以从下面引用流程。授权服务器是Microsoft提供的服务器。
+--------+ +---------------+
| |--(A)- Authorization Request ->| Resource |
| | | Owner |
| |<-(B)-- Authorization Grant ---| |
| | +---------------+
| |
| | +---------------+
| |--(C)-- Authorization Grant -->| Authorization |
| Client | | Server |
| |<-(D)----- Access Token -------| |
| | +---------------+
| |
| | +---------------+
| |--(E)----- Access Token ------>| Resource |
| | | Server |
| |<-(F)--- Protected Resource ---| |
+--------+ +---------------+
如果 Web 应用提供了用于输入 Azure AD 帐户的登录页,则该站点看起来像一个网络钓鱼站点,用户不会信任该站点。