【问题标题】:How to get permissions for SharePoint files on Office 365如何在 Office 365 上获取 SharePoint 文件的权限
【发布时间】:2018-05-11 08:15:36
【问题描述】:

在 Office365 中,我们使用用户“UserA”将文件“File1”上传到 OneDrive。然后,我们使用图形 api (https://graph.microsoft.com/me/drives/[DriveId]/items/[itemId]/permissions) 获取该文件的权限,并按预期取回权限:

"permissions": [
  {
    "grantedTo": {
      "user": {
        "email": "UserA@wherever.com",
        "id": "ef7bd4af-3f36-4e81-9f76-296f4956b807",
        "displayName": "User A"
      }
    },
    "id": "aTowIy5mfG1lbWJlcnNoaXB8ZGRyYXBlckBmaXJlbGF5ZXJzLm9ubWljcm9zb2Z0LmNvbQ",
    "roles": [
      "owner"
    ]
  }
]

但是,我们随后将相同的文件(使用相同的用户)上传到新创建的名为“Site1”的 SharePoint 网站并获取该文件的权限(再次使用图形 API)。与 OneDrive 文件权限不同,此 SharePoint 文件返回的权限不包含“UserA”,但仅包括 3 个特定于站点的组(它们似乎是在创建新的 SharePoint 站点时自动创建的)

"permissions": [
  {
    "grantedTo": {
      "user": {
        "displayName": "Site1 Owners"
      }
    },
    "id": "QXRoYXlUZXN0IE93bmVycw",
    "roles": [
      "owner"
    ]
  },
  {
    "grantedTo": {
      "user": {
        "displayName": " Site1 Visitors"
      }
    },
    "id": "QXRoYXlUZXN0IFZpc2l0b3Jz",
    "roles": [
      "read"
    ]
  },
  {
    "grantedTo": {
      "user": {
        "displayName": " Site1 Members"
      }
    },
    "id": "QXRoYXlUZXN0IE1lbWJlcnM",
    "roles": [
      "write"
    ]
  }
]

列出 SharePoint 网站的所有组时,这 3 个组均未列出。但是,名为“Site1”的组包含但不包含任何添加到这 3 个组中的任何用户。

我们如何使用图形 API 获取这些组(即属于给定组的用户)的其他信息/这甚至可能吗?

【问题讨论】:

    标签: sharepoint office365 microsoft-graph-api


    【解决方案1】:

    我不确定是否可以通过 Graph API 实现,但 SharePoint 确实有一个专注于用户和组的 RESTful API,应该会有所帮助。它确实在此处包含大量示例: https://msdn.microsoft.com/en-us/library/office/dn531432.aspx

    【讨论】:

      猜你喜欢
      • 2012-11-09
      • 2013-10-08
      • 2017-10-30
      • 1970-01-01
      • 2020-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多