AudienceRestrictionCondition无效,因为AudienceUris中不存在指定的受众

时间:2014-04-12 15:57:46

标签: c# single-sign-on

我创建了简单的webapp,我动态创建了一个登录请求并发送到我的ADFS服务器。返回时,我将重定向到我在iis服务器中配置的另一个应用程序URL [同样的URL也在ADFS服务器中配置]。但不幸的是我收到如下错误信息

 <i>`
issuerLocation = "https://test12.login.mytest.edu/adfs/ls/";
               realm = "https://domain/SSO_Test/";           
              this.Request.Url.AbsoluteUri.Remove(this.Request.Url.AbsoluteUri.IndexOf(this.Request.Url.Query, StringComparison.OrdinalIgnoreCase));
            var contextId = Guid.NewGuid().ToString();
            this.CreateContextCookie(contextId, this.Request.Url.AbsoluteUri);

            var message = new SignInRequestMessage(new Uri(issuerLocation), realm)
                              {
                                  CurrentTime = DateTime.UtcNow.ToString("s", CultureInfo.InvariantCulture) + "Z", 
                              };

            this.Response.Redirect(message.RequestUrl, false);


ID1038: The AudienceRestrictionCondition was not valid because the specified Audience is not present in AudienceUris.
Audience:

请帮帮我

2 个答案:

答案 0 :(得分:14)

如果我了解您的情况,您有一个依赖方(您的webapp)发送给身份提供商(ADFS服务器),并且一旦依赖方(您的webapp)已经过身份验证,您就会将用户重定向到另一个应用程序。

该错误引用了依赖方的配置文件AudienceUri部分。值可能会丢失或拼写错误:

<configuration>
  <system.identityModel>
    <identityConfiguration>
      <audienceUris>
        <add value="http://**YourSiteHere**/" />
      </audienceUris>
    </identityConfiguration>
  </system.identityModel>
</configuration>

HTH

答案 1 :(得分:3)

有时可能是因为尾随斜线&#34; /&#34; ......这就是我的问题。从错误消息中复制URL并将其添加到audienceUris,它开始正常工作。