4

我正在尝试根据登录用户的 AD 组限制页面访问。我对以下代码有疑问。

   var tenantId = incomingPrincipal.FindFirst(GraphConfiguration.TenantIdClaimType).Value;

 //create Azure Graph Api client to make api calls
 var client = Helpers.AzureGraphAPIFunctions.GetActiveDirectoryClient(tenantId);

 IGroup group = client.Groups.Where(x => x.DisplayName == groupName).ExecuteSingleAsync().Result;

这些代码工作正常,并通过 groupName 为我获取 AD 组,但有时会引发异常

“租户信息在本地不可用。使用以下 URL 获取信息。”

{"odata.error":{"code":"Directory_BindingRedirection","message":{"lang":"en","value":"Tenant information is not available locally. Use the following Urls to get the information."},
"values":[
          {"item":"Url1","value":"https:\/\/directory-s1-ch1.directory.windows.net"},
          {"item":"Url2","value":"https:\/\/directory-s1-sn2.directory.windows.net"},
          {"item":"Url3","value":"https:\/\/directory-s1-co1.directory.windows.net"},
          {"item":"Url4","value":"https:\/\/directory-s1-bl2.directory.windows.net"}
         ]}}

有任何想法吗?

谢谢

4

1 回答 1

3

伙计们,

我们目前正在调查此问题(您应该不会看到此错误)。它看起来像一个回归。当我有更多信息时会更新这个线程。

更新
这个问题现在应该得到解决。我们对网关逻辑进行了更新,破坏了我们的一些重试/重定向逻辑。我们现在已经安装了一些监视器,它们应该可以更快地检测到这个问题(如果我们再次犯同样的错误)。

对受此事件影响的各位深表歉意。

于 2015-07-24T17:34:42.330 回答