Microsoft graph api 读取OneDrive项上的权限时,按方面提供了错误的invitedBy
我正在使用来查询Microsoft Graph API。给定项目ID,我将获得该项目的权限。这是针对个人OneDrive帐户的 我进行的API调用示例如下:Microsoft graph api 读取OneDrive项上的权限时,按方面提供了错误的invitedBy,microsoft-graph-api,Microsoft Graph Api,我正在使用来查询Microsoft Graph API。给定项目ID,我将获得该项目的权限。这是针对个人OneDrive帐户的 我进行的API调用示例如下: GEThttps://graph.microsoft.com/beta/me/drive/items/D50E00A756B729AA!159/权限 我收到一个权限列表,如下所示: { "value": [ { "grantedTo": { "user": {
GEThttps://graph.microsoft.com/beta/me/drive/items/D50E00A756B729AA!159/权限
我收到一个权限列表,如下所示:
{
"value": [
{
"grantedTo": {
"user": {
"displayName": "Joe Smith",
"id": "bada17275094e9b0"
}
},
"id": "nm4tYSpLz13yR39343yrz0WZXWo",
"invitation": {
"email": "joe.smith@hotmail.com",
"invitedBy": {
"user": {
"id": "joe.smith@hotmail.com"
}
},
"signInRequired": false
},
"inheritedFrom": {
"driveId": "d50e00a756b729aa",
"id": "D50E00A756B729AA!155",
"name": "Test",
"path": "/drive/root:/Test",
"shareId": "s!AKopt1anAA7VgRs"
},
"link": {
"webUrl": "https://1drv.ms/u/s!BKopt1anAA7VgR9yuy10rsiYA_7Q"
},
"roles": [
"write"
],
"shareId": "s!BKopt1anAA7VgRtyuy10rsiYA_7Q",
"expirationDateTime": "0001-01-01T00:00:00Z"
},
{
"grantedTo": {
"user": {
"displayName": "Joe Smith",
"id": "45aa3379f269b493"
}
},
"id": "UJX2eUiHYJs7acen2EcvmrGCsf4",
"invitation": {
"email": "foo-bar@outlook.com",
"invitedBy": {
"user": {
"id": "foo-bar@outlook.com"
}
},
"signInRequired": false
},
"inheritedFrom": {
"driveId": "d50e00a756b729aa",
"id": "D50E00A756B729AA!155",
"name": "Test",
"path": "/drive/root:/Test",
"shareId": "s!AKopt1anAA7VgRs"
},
"link": {
"webUrl": "https://1drv.ms/u/s!BKopt1anAA7VgR8mG0ye7kE5Dtp1"
},
"roles": [
"write"
],
"shareId": "s!BKopt1anAA7VgRsmG0ye7kE5Dtp1",
"expirationDateTime": "0001-01-01T00:00:00Z"
},
{
"grantedTo": {
"user": {
"displayName": "Joe Smith",
"id": "bada17275094e9b0"
}
},
"id": "t3QbXwuwNlmJCKF18R1Vwrp_I_U",
"invitation": {
"email": "joe.smith@hotmail.com",
"invitedBy": {
"user": {
"id": "joe.smith@hotmail.com"
}
},
"signInRequired": false
},
"inheritedFrom": {
"driveId": "d50e00a756b729aa",
"id": "D50E00A756B729AA!160",
"shareId": "s!AKopt1anAA7VgSA"
},
"link": {
"webUrl": "https://1drv.ms/u/s!BKopt1anAA7VgR-0ZrUC-a2mYpgl"
},
"roles": [
"write"
],
"shareId": "s!BKopt1anAA7VgSC0ZrUC-a2mYpgl",
"expirationDateTime": "0001-01-01T00:00:00Z"
}
]
}
如果查看这些权限中的任何一个,您将看到invitedTo
facet总是返回授予该权限的用户。我用测试账户验证了我刚才说的是真的。这好像是一个错误
为什么会发生这种情况,有什么答案吗?我希望
invitedBy
是向被授予权限的人颁发权限的用户。因此,我需要做一些测试,而不是让Joe Smith成为授权给的用户、邀请电子邮件和邀请的用户,我们应该在邀请的中有一个完全独立的用户,但是属性名称肯定暗示了您在这里期望的行为。然而,文档中的描述相当模糊。我想你是想找到“谁和我分享了这个”@marclafler-MSFT是的,没错。说得很清楚,是“谁与共享此文件?”我无法复制此文件,实际上我没有获得任何远程项目的权限。但是,我可以通过remoteItem
方面中的shared
元素看到谁与我共享了它。@marclafler MSFT我指的不是remoteItems。我指的是驱动器中的项目。假设我有一个文件并与某人共享。该项目的权限中应该显示什么?我希望被
邀请拥有我的用户,而被授予
拥有与我共享的用户。但是我想如果有人与其他人共享我的驱动器项目,那么invitedBy
应该包括共享我文件的用户。如果先与您共享了其他人的文件,是否还可以共享该文件?如果不是,是否可以安全地假设我的一个文件上的invitedBy
应该始终是我?我需要做一些测试,但属性名称肯定暗示了您在这里期望的行为。然而,文档中的描述相当模糊。我想你是想找到“谁和我分享了这个”@marclafler-MSFT是的,没错。说得很清楚,是“谁与共享此文件?”我无法复制此文件,实际上我没有获得任何远程项目的权限。但是,我可以通过remoteItem
方面中的shared
元素看到谁与我共享了它。@marclafler MSFT我指的不是remoteItems。我指的是驱动器中的项目。假设我有一个文件并与某人共享。该项目的权限中应该显示什么?我希望被
邀请拥有我的用户,而被授予
拥有与我共享的用户。但是我想如果有人与其他人共享我的驱动器项目,那么invitedBy
应该包括共享我文件的用户。如果先与您共享了其他人的文件,是否还可以共享该文件?如果不是,是否可以安全地假设我的一个文件上的被
邀请者应该始终是我?