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

use*_*063 11 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:
Run Code Online (Sandbox Code Playgroud)

请帮我

CaP*_*ter 14

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

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

<configuration>
  <system.identityModel>
    <identityConfiguration>
      <audienceUris>
        <add value="http://**YourSiteHere**/" />
      </audienceUris>
    </identityConfiguration>
  </system.identityModel>
</configuration>
Run Code Online (Sandbox Code Playgroud)

HTH


Gok*_*ath 5

有时可能是因为尾部斜杠“/”......这就是我的问题。从错误消息中复制 URL 并将其添加到 中audienceUris,然后它开始正常工作。