标签: microsoft-graph-api

资源“”不存在或其查询的引用属性对象之一不存在

我在 Azure AD B2C 中创建了一个名为“角色”的自定义用户属性。
我正在尝试使用Microsoft.Graph 5.6.0以下记录的方法来更新此内容:

var user = new User
{
    AdditionalData = new Dictionary<string, object>
    {
          { $"extension_{_extensionAttributeId}_role", roleName }
    }
};
await _graphServiceClient.Users[userId].PatchAsync(user);
Run Code Online (Sandbox Code Playgroud)

这会导致底层消息出现异常:Resource '' does not exist or one of its queried reference-property objects are not present
奇怪的是,该消息中甚至没有 Guid(如上所示)。所以我不知道它在抱怨什么。

我可以使用以下代码正确地获取用户:

var user = await _graphServiceClient.Users[userId].GetAsync();
Run Code Online (Sandbox Code Playgroud)

所以至少它能够找到用户。

c# azure-active-directory azure-ad-b2c microsoft-graph-api azure-ad-b2c-custom-policy

2
推荐指数
1
解决办法
8658
查看次数

如何迭代 Python SDK for Microsoft Graph 中的分页结果?

我正在掌握Python SDK,之前从未使用过 GraphQL (但我熟悉基本概念)。我能够odata_next_link从响应中检索值,但我不确定如何使用它。我从这里注意到:

您应该在下一页结果的请求中的 @odata.nextLink 属性中包含整个 URL。根据执行查询的 API,@odata.nextLink URL 值将包含 $skiptoken 或 $skip 查询参数。URL 还包含原始请求中存在的所有其他查询参数。不要尝试提取 $skiptoken 或 $skip 值并将其用于不同的请求。

但是,我不确定如何在下一个请求中包含该 URL。目前,我的查询看起来像response = await graph_client.groups.by_group_id(group_id).transitive_members.get()- 我没有看到更改基本网址的选项。我想我可以做这样的事情:

query_params = GroupsRequestBuilder.GroupsRequestBuilderGetQueryParameters(
  skip_token = parse_qs(urlparse(response.odata_next_link).query)['$skipToken'][0]
)
request_configuration = GroupsRequestBuilder.GroupsRequestBuilderGetRequestConfiguration(
  query_parameters=query_params
)
response = await graph_client.[...].get(request_configuration)
Run Code Online (Sandbox Code Playgroud)

但该报告GroupsRequestBuilder.GroupsRequestBuilderGetQueryParameters.__init__() got an unexpected keyword argument 'skip_token'(如果我尝试命名参数skiptoken或,则类似skipToken

令人沮丧的是,这里没有代码示例- 但是,基于这些示例,我确实在存储库中搜索了迭代器 -但没有结果

python microsoft-graph-sdks microsoft-graph-api

2
推荐指数
1
解决办法
628
查看次数

Microsoft GraphApi ICalUid 是什么格式?

使用 Microsoft GraphAPI 和 CalendarView 做一些工作。为了好玩,我通过 Google 创建了一个活动,并邀请了我的 Office365 帐户以确保两者之间的 ICalUid 相同。

如果我使用 EWS 服务,ICalUid 在从谷歌检索事件时与 ICalUid 匹配。我希望 GraphAPI 是相同的,但是,它们不匹配。

谷歌和 EWS 有类似的东西:

sqvitruh3ho3mrq896tplad4v8@google.com

GraphAPI 具有:

040000008200E00074C5B7101A82E0080000000038C12994A0A1D1010000000000000000100000002D3AE9C22CC82C49D981000000000

我尝试了几次尝试将一种格式转换为另一种格式,但开始怀疑它们是否以任何方式相关。有任何想法吗?

exchangewebservices microsoft-graph-api

1
推荐指数
1
解决办法
945
查看次数

在 OneDrive 中上传文件时未将对象引用设置为对象

我正在使用 Microsoft Graph SDK 在 OneDrive 中分块上传文件。我正在使用以下代码上传文件:

try
{
    GraphServiceClient graphClient = this.GetGraphServiceClient(accessToken);

    string fileName = Path.GetFileName(srcFilePath);

    using (var fileContentStream = System.IO.File.Open(srcFilePath, System.IO.FileMode.Open))
    {
        var uploadSession = await graphClient.Me.Drive.Root.ItemWithPath(fileName).CreateUploadSession().Request().PostAsync();

        var maxChunkSize = 5 * 1024 * 1024;
        var provider = new ChunkedUploadProvider(uploadSession, graphClient, fileContentStream, maxChunkSize);

        var chunkRequests = provider.GetUploadChunkRequests();
        var readBuffer = new byte[maxChunkSize];
        var trackedExceptions = new List<Exception>();
        Microsoft.Graph.DriveItem itemResult = null;

        foreach (var request in chunkRequests)
        {
            var result = await provider.GetChunkRequestResponseAsync(request, readBuffer, trackedExceptions);

            if (result.UploadSucceeded)
            {
                itemResult …
Run Code Online (Sandbox Code Playgroud)

onedrive microsoft-graph-api

1
推荐指数
1
解决办法
336
查看次数

无法再通过 Graph API 找到 SharePoint 网站资产列表

我使用 Microsoft Graph API 来查询 SharePoint。直到最近,我才能够通过 Graph API 找到“站点资产”文档库。我再也找不到清单了。

我尝试过哪些查询:

https://graph.microsoft.com/v1.0/sites/{siteid}/lists?select=weburl
Run Code Online (Sandbox Code Playgroud)

没有 URL 与站点资产列表匹配。下一个:

https://graph.microsoft.com/v1.0/sites/{siteid}/drives?select=weburl
Run Code Online (Sandbox Code Playgroud)

同样没有 URL 与站点资产列表匹配。在过去,我总是能够找到使用第二个查询的资产。我将两个查询都切换到测试版,也没有结果。

我查看了 Graph API 中的变更日志,但没有列出任何相关内容。

我如何(现在)在任何 SharePoint 网站上找到“网站资产”列表?

sharepoint microsoft-graph-api

1
推荐指数
1
解决办法
563
查看次数

Microsoft Graph:将文件上传到 OneDrive 上与我共享的文件夹?

我能够使用这种方法成功上传到共享文档文件夹。但我正在寻找一种将文件上传到 OneDrive 上的 Shared WithMe 文件夹的方法。

是否可以上传到 OneDrive 上的“/Shared WithMe”文件夹?如果是这样,PUT(小文件)或 POST(上传会话)的正确语法是什么?我花了很多时间来解决这个问题,但没有运气。

任何帮助将不胜感激。

onedrive microsoft-graph-api

1
推荐指数
1
解决办法
760
查看次数

无法枚举站点

使用 Microsoft Graph Dot Net 包,我无法调用:

await client.Sites.Request().GetAsync();
Run Code Online (Sandbox Code Playgroud)

即使在图形资源管理器上,我也可以很好地访问站点端点:

在此处输入图片说明

microsoft-graph-api

1
推荐指数
1
解决办法
1668
查看次数

在没有 oAuth 的情况下根据 Azure AD 验证用户凭据

我希望使用 Azure AD 作为我的身份验证系统,但不想将我的用户退回到 Microsoft 登录页面,因为它具有破坏性,而且用户可能拥有或没有个人帐户和/或工作帐户的事实似乎使它非常混乱对于大多数。

在过去的几天里,我对此进行了大量研究,但只找到了向我展示 .NET、Azure Graph 和 Microsoft Graph API 中的 AAD 库的资源。所有这些似乎都是通过 Microsoft 登录窗口执行 oAuth 的复杂系统。

我正在使用 Golang,但我是 .NET 中的 MSCA。如果 .net 中的源代码引用不需要专有/封闭源 DLL 文件,我可以将其用作起点,否则,如果有一些参考点可能显示如何使用 MS Graph API 发送用户名和密码(在我的网站上输入)并收到一些肯定或否定的响应,表明所提供的凭据是否与我的 Azure AD 中的帐户匹配会很好。

例如,我知道使用https://msdn.microsoft.com/en-us/library/azure/ad/graph/api/users-operations来创建、获取、列出、更新和删除用户。但它似乎没有验证或授权程序(当然,除非我只是错过了它)。

我的问题是,有没有一种方法可以在不使用 oAuth 的情况下通过 Microsoft 帐户登录来验证凭据?如果是这样,有人可以提供参考和/或一些伪代码来让我朝着正确的方向前进吗?提前致谢!

go azure-active-directory azure-ad-graph-api microsoft-graph-api

1
推荐指数
1
解决办法
521
查看次数

Azure AD / Microsoft Graph 访问级别升级和降级

有没有办法升级和降级 Azure AD / Microsoft Graph 访问级别?

例如,用户是否可以使用 Web 应用程序注册仅用于登录然后升级对 One Drive 的访问权限或降级回登录?我正在寻找一种方法来取消对用户访问的授权,然后使用不同的权限集重新授权,但找不到取消授权的方法。

azure-active-directory microsoft-graph-api

1
推荐指数
1
解决办法
123
查看次数

在 Microsoft Graph API 中获取个人资料图片一无所获

我正在尝试使用Microsoft Graph API获取用户的个人资料图片(并且,理想情况下,具有不同颜色背景的后备首字母缩写)使用Microsoft Graph API,但我无法得到任何响应但是 404 状态和以下正文(令人讨厌的是也延迟了 5-20 秒):

{
    "error": {
        "code": "ResourceNotFound",
        "message": "Resource could not be discovered.",
        "innerError": {
            "request-id": "1e7f0ca4-2cd4-4602-a903-b0bde1ec8ea0",
            "date": "2018-06-11T14:04:10"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我什至尝试过在线 Graph Explorer,但结果相同。我已将个人资料图片上传到我自己的帐户,但仍然得到相同的结果。

可能是什么原因?还有其他方法可以获取 Azure AD 用户的个人资料图片吗?

azure-active-directory microsoft-graph-api

1
推荐指数
1
解决办法
2906
查看次数