使用ADAL.net AcquireTokenAsync调用时出错

时间:2017-02-22 15:10:21

标签: c# asp.net-mvc azure azure-active-directory adal

我正在探索Azure Active Directory。我试图看看我是否可以使用我自己的登录页面和自定义用户ID /密码控件来捕获用户凭据并验证Azure AD。我正在使用ADAL.net来实现这一点,但是我收到错误“parsing_wstrust_response_failed:解析WS-Trust响应失败”。我在下面代码的最后一行收到此错误。

以下是我的代码:

string AppIdURL = ConfigurationManager.AppSettings["AppIdUrl"];
            UserCredential uc = new UserPasswordCredential("testuser@domain.com", "test123");
            AuthenticationContext aContext = new AuthenticationContext(System.Configuration.ConfigurationManager.AppSettings["AADInstance"]);
            AuthenticationResult result = aContext.AcquireTokenAsync(AppIdURL, ConfigurationManager.AppSettings["ClientId"], uc).Result;

1 个答案:

答案 0 :(得分:1)

请先单击here以查看资源所有者密码凭据授予流的约束和限制。根据您的错误消息,用户是否与WS-Trust联合?请提供有关当前配置的更多信息,以帮助我们重现此错误。

实际上,不建议使用资源所有者密码凭据授权流程。这应该仅在资源所有者和客户端之间存在高度信任时使用(例如,客户端是设备操作系统或高权限应用程序的一部分),并且当其他授权授权类型不可用时(例如作为授权代码)。

如果您的目标是自定义登录页面,例如在登录页面中添加公司品牌,则可以点击here了解如何自定义登录页面。