【问题标题】:Federated identity AAD to ADFS redirect | UWP App联合身份 AAD 到 ADFS 重定向 | UWP 应用
【发布时间】:2018-10-29 08:19:40
【问题描述】:

我们正在使用 ADAL for .NET 来针对 Azure AD 对我们的 UWP 应用进行身份验证。 Azure AD 与内部 AD 同步(使用 Azure AD Connect),并与 AD FS 联合。

当我调用“AcquireTokenAsync”时...

  1. Web 视图按预期弹出。

  2. 提示用户在 Microsoft Azure AD 登录页面上输入他们的电子邮件。

  3. 当域用户输入他们的用户名时,会出现预期的“我们正在将您带到贵组织的登录页面...”消息。

  4. 用户被重定向到组织的实际自定义登录页面

所以我的问题是:我们可以跳过默认 Azure AD 页面 (#2) 的第一个提示并直接重定向到组织的登录页面吗?

我可以通过使用自定义 OpenIdConnectEvents 并设置域名 (context.ProtocolMessage.DomainHint) 在 Web UI 应用程序中实现相同的目的。但是在这个客户端应用程序场景中无法弄清楚该怎么做。欢迎任何积分。

UWP 代码就像...一样简单

AuthenticationContext ac = new AuthenticationContext("https://login.microsoftonline.com/abccompany.onmicrosoft.com");

AuthenticationResult ar = await ac.AcquireTokenAsync("resource", "clientId", new Uri("redirect url for client app"), new PlatformParameters(PromptBehavior.Always, false));

// Get token from: ar.AccessToken;

【问题讨论】:

    标签: uwp azure-active-directory adfs


    【解决方案1】:

    好的,我想通了。谢谢。 “domain_hint”是诀窍。

    AuthenticationResult ar = await ac.AcquireTokenAsync("resource", "clientId", new Uri("redirect url for client app"), new PlatformParameters(PromptBehavior.Always, false), UserIdentifier.AnyUser, "domain_hint=*******.net");
    

    【讨论】:

    • 是的,如果您指定 domain_hint=company.com,Azure AD 会在租户中找到域,确定它是联合域,然后重定向到 ADFS 登录屏幕。这也称为“跳过 Home Realm Discovery”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    相关资源
    最近更新 更多