Microsoft.Azure.ActiveDirectory.GraphClient-GetObjectsByObjectIdsAsync-应用程序/用户失败

时间:2019-02-19 10:56:18

标签: azure azure-active-directory azure-ad-graph-api

我能够在本地获取Azure AD应用程序,但是当作为应用程序服务托管在Azure中并确保Web.config值正确时,它就会中断。它已经工作了很长时间,并且无缘无故失败了。由于对象为null,因此在强制转换时发生了异常。因此,不知道为什么GetObjectsByObjectIdsAsync中不返回对象的原因。

ActiveDirectoryClient client = ADAuthenticationHelper.GetActiveDirectoryClient();

//User

var userobjects = await client.GetObjectsByObjectIdsAsync(new string[] { "xxxxxxxx" }, new string[] { "user" });

List<Microsoft.Azure.ActiveDirectory.GraphClient.User> users = userobjects.OfType(Microsoft.Azure.ActiveDirectory.GraphClient.User)().ToList();

//Application

var applicationObjects = await client.GetObjectsByObjectIdsAsync(new string[] { "xxxxxxxx" }, new string[] { "application" });

List<Microsoft.Azure.ActiveDirectory.GraphClient.Application> applications = applicationObjects.OfType(Microsoft.Azure.ActiveDirectory.GraphClient.Application)().ToList();

图书馆:

  • Microsoft.Azure.ActiveDirectory.GraphClient = 2.1.10

依赖项

1)Microsoft.Data.Edm = 5.6.4

2)Microsoft.Data.OData = 5.6.4

3)Microsoft.Data.Services.Client = 5.6.4

4)System.Spatial = 5.6.4

然后通过将以上依赖项从5.6.4升级到5.8.4,然后能够获取应用程序对象,但用户获取在Azure应用服务中失败的方式解决了此问题。

注意:5.6.4和5.8.4均在本地工作(应用程序和用户获取工作),并且仅在应用程序服务(Azure)中发生异常。

需要帮助并纠正我的错误。

请告知我是否需要其他详细信息。

0 个答案:

没有答案