命名空间:microsoft.graph
向现有 fileStorageContainer 添加权限。
重要
添加到 fileStorageContainer 的权限将应用于其所有 driveItem 对象,而不考虑应用于这些项的任何唯一或限制性权限。
此 API 可用于以下国家级云部署。
| 全局服务 | 美国政府 L4 | 美国政府 L5 (DOD) | 由世纪互联运营的中国 |
|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ |
权限
为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 | 最低特权权限 | 更高特权权限 |
|---|---|---|
| 委派(工作或学校帐户) | FileStorageContainer.Selected | FileStorageContainer.Manage.All |
| 委派(个人 Microsoft 帐户) | FileStorageContainer.Selected | 不可用。 |
| 应用程序 | FileStorageContainer.Selected | 不可用。 |
除了Microsoft Graph 权限外,应用还必须具有调用此 API 所需的容器类型级别权限。 有关容器类型的详细信息,请参阅 容器类型。 若要详细了解容器类型级别权限,请参阅 SharePoint 嵌入式授权。
HTTP 请求
POST /storage/fileStorage/containers/{containerId}/permissions
路径参数
| 参数 | 类型 | 说明 |
|---|---|---|
| containerId | String | fileStorageContainer 的唯一标识符。 必需。 |
请求标头
| 名称 | 说明 |
|---|---|
| Authorization | 持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| Content-Type | application/json. 必需。 |
请求正文
在请求正文中,使用以下属性提供 权限 对象的 JSON 表示形式。
| 名称 | 类型 | 说明 |
|---|---|---|
| @microsoft.graph.conflictBehavior | String | 控制目标标识已存在于具有不同角色的容器中时的行为。 可取值为:fail、replace。 默认值为 fail。 对于 fail,如果已存在具有不同角色的标识,API 将 409 Conflict 返回响应代码,并 resourceModified 返回错误。 对于 replace,将替换容器中标识的当前角色。 可选。 |
| grantedToV2 | sharePointIdentitySet | 对于用户类型权限,请参阅此权限的用户的详细信息。 |
| 角色 | String 集合 | 权限的类型。
reader、writer、 manager或 owner。 |
响应
如果成功,此方法在 201 Created 响应正文中返回响应代码和 权限 对象。
示例
示例 1:为用户创建新权限
以下示例演示如何在容器中为用户创建新权限作为读取者。
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/storage/fileStorage/containers/b!ISJs1WRro0y0EWgkUYcktDa0mE8zSlFEqFzqRn70Zwp1CEtDEBZgQICPkRbil_5Z/permissions
Content-type: application/json
{
"roles": ["reader"],
"grantedToV2": {
"user": {
"userPrincipalName": "jacob@fabrikam.com"
}
}
}
响应
以下示例显示了相应的响应。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.permission",
"id": "cJpbmNpcGFsT3duZAJfaLowIy5mfG1lbWJliZXJzaGlwfHJvcnlicjExMUBvdXRsb29rLmNvbQ",
"roles": ["reader"],
"grantedToV2": {
"user": {
"id": "89ea5c94-7736-4e25-95ad-3fa95f62b66e",
"userPrincipalName": "jacob@fabrikam.com",
"displayName": "Jacob Hancock",
"email": "jacob@fabrikam.com"
}
}
}
示例 2:创建权限时替换现有角色
以下示例演示如何在 @microsoft.graph.conflictBehavior 设置为 replace时更改标识的现有角色。
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/v1.0/storage/fileStorage/containers/b!ISJs1WRro0y0EWgkUYcktDa0mE8zSlFEqFzqRn70Zwp1CEtDEBZgQICPkRbil_5Z/permissions
Content-type: application/json
{
"@microsoft.graph.conflictBehavior": "replace",
"roles": ["writer"],
"grantedToV2": {
"user": {
"userPrincipalName": "jacob@fabrikam.com"
}
}
}
响应
以下示例显示了相应的响应。
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.permission",
"id": "cJpbmNpcGFsT3duZAJfaLowIy5mfG1lbWJliZXJzaGlwfHJvcnlicjExMUBvdXRsb29rLmNvbQ",
"roles": ["writer"],
"grantedToV2": {
"user": {
"id": "89ea5c94-7736-4e25-95ad-3fa95f62b66e",
"userPrincipalName": "jacob@fabrikam.com",
"displayName": "Jacob Hancock",
"email": "jacob@fabrikam.com"
}
}
}