Azure AD GraphServiceClient扩展不起作用

时间:2018-12-07 12:56:00

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

我有以下查询,用于使用带有{.1核心.net核心2的用户。

GraphServiceClient

运行此命令时,出现以下错误

  

Microsoft.Graph.ServiceException:代码:generalException消息:   服务意外返回异常。

仅当我使用以下代码向用户添加了 user = await _graphClient.Users[principalName].Request() .Expand("Extensions") .GetAsync(); 时,这种情况才会发生!

OpenTypeExtension

我现在开始真的对Azure AD感到厌烦。

我似乎无法向用户添加任何元数据。仅这样做是因为extension = new OpenTypeExtension { ExtensionName = AzureADExtensions.UserConstants.ExtensionName, AdditionalData = new Dictionary<string, object> { {"OtherEmail", externalUser.Email}, {"OtherRole" , externalUser.Roles.FirstOrDefault()} } }; await _graphClient.Users[user.Id].Extensions.Request() .AddAsync(extension); otherEmails不兼容,并且尝试使用任何其他明智的字段都会给我以下错误:

  

租户在更新用户时没有SPO许可证

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

因此,对于遇到此问题的其他人,这似乎是服务客户端中的错误。

下面的代码失败

  user = await _graphClient
                    .Users[userId]
                    .Request()
                    .Expand("Extensions")
                    .GetAsync();

但是此代码有效,仅在单独的调用中请求扩展!

 user = await _graphClient
                    .Users[userId]
                    .Request()
                    .GetAsync();

                var extensions = await _graphClient.Users[user.Id].Extensions.Request().GetAsync();
                user.Extensions = extensions;

希望我在此上浪费的时间可以节省一个人!