Тип ресурса Permission
Ресурс Permission содержит сведения о разрешении на совместный доступ, предоставленном для ресурса DriveItem.
Разрешения на совместный доступ могут иметь самые различные формы. Ресурс Permission представляет эти формы с помощью аспектов в ресурсе.
Представление JSON
Ниже показано представление JSON ресурса.
{
"id": "string (identifier)",
"grantedTo": {"@odata.type": "microsoft.graph.identitySet"},
"grantedToIdentities": [{"@odata.type": "microsoft.graph.identitySet"}],
"inheritedFrom": {"@odata.type": "microsoft.graph.itemReference"},
"invitation": {"@odata.type": "microsoft.graph.sharingInvitation"},
"link": {"@odata.type": "microsoft.graph.sharingLink"},
"roles": ["string"],
"shareId": "string"
}
Свойства
Свойство | Тип | Описание |
---|---|---|
id | Строка | Уникальный идентификатор разрешения среди всех разрешений для элемента. Только для чтения. |
grantedTo | IdentitySet | Для разрешений типа user: сведения о пользователях и приложениях для этого разрешения. Только для чтения. |
grantedToIdentities | Collection(IdentitySet) | Для разрешений типа link: сведения о пользователях, которым предоставлено разрешение. Только для чтения. |
invitation | SharingInvitation | Сведения обо всех сопоставленных приглашениях к совместному использованию для данного разрешения. Только для чтения. |
inheritedFrom | ItemReference | Предоставляет ссылку на предка текущего разрешения, если оно унаследовано от предка. Только для чтения. |
ссылка | SharingLink | Предоставляет сведения о ссылке для текущего разрешения, если это разрешение типа link. Только для чтения. |
roles | Collection(String) | Тип разрешения, например read . Полный список ролей см. ниже. Только для чтения. |
shareId | String | Уникальный маркер, с помощью которого можно получить доступ к общему элементу через API общих папок. Только для чтения. |
Перечисление ролей
Роль | Сведения |
---|---|
read |
Дает возможность считывать метаданные и содержимое элемента. |
write |
Дает возможность считывать и изменять метаданные и содержимое элемента. |
owner |
В случае с SharePoint и OneDrive для бизнеса представляет роль владельца. |
member |
В случае с SharePoint и OneDrive для бизнеса представляет роль участника. |
Ресурс Permission предоставляет сведения о типе разрешения, представленного ресурсом, с помощью аспектов.
Ссылки совместного доступа содержат уникальный маркер, необходимый для доступа к элементу.
Разрешения с аспектом приглашения представляют разрешения, добавленные путем приглашения определенных пользователей или групп для доступа к файлу.
Предоставление ссылок
Разрешения с аспектом link представляют ссылки для совместного доступа, созданные в элементе. Это наиболее распространенные типы разрешений. Ссылки для совместного доступа предоставляют уникальный URL-адрес, который можно использовать для доступа к файлу или папке. Их можно настроить для предоставления доступа различными способами. Например, вы можете использовать API createLink, чтобы создать ссылку, доступную любым пользователям, вошедшим в вашу организацию, или вы можете создать ссылку, доступную всем пользователями без необходимости входа. Вы можете использовать API приглашения, чтобы создать ссылку, доступную только определенным пользователям, независимо от того, относятся ли они к вашей организации или нет.
Вот несколько примеров ссылок совместного доступа.
Ссылка для просмотра
Эта ссылка для просмотра предоставляет доступ только для чтения любому пользователю с ссылкой.
{
"id": "1",
"roles": ["read"],
"link": {
"scope": "anonymous",
"type": "view",
"webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
"application": { "id": "1234", "displayName": "Sample Application" }
},
"shareId": "!LKj1lkdlals90j1nlkascl"
}
Ссылка для редактирования
Эта ссылка для редактирования предоставляет доступ для чтения и записи любому пользователю в организации, у которого есть ссылка.
{
"id": "2ceefb3g32hh",
"roles": ["write"],
"link": {
"scope": "organization",
"type": "edit",
"webUrl": "https://contoso.sharepoint.com/:w:/t/design/fj277ghautbb422707565gnvg23",
"application": { "id": "1234", "displayName": "Sample Application" }
},
"shareId": "!LKj1lkdlals90j1nlkascl"
}
Ссылка для определенных пользователей
Эта ссылка предоставляет доступ для чтения и записи определенным пользователям в коллекции grantedToIdentities
.
{
"id": "3",
"grantedToIdentities": [
{
"user": {
"id": "35fij1974gb8832",
"displayName": "Misty Suarez"
}
},
{
"user": {
"id": "9397721fh4hgh73",
"displayName": "Judith Clemons"
}
}
],
"roles": ["write"],
"link": {
"webUrl": "https://contoso.sharepoint.com/:w:/t/design/a577ghg9hgh737613bmbjf839026561fmzhsr85ng9f3hjck2t5s",
"application": { "id": "1234", "displayName": "Sample Application" }
},
"shareId": "!LKj1lkdlals90j1nlkascl"
}
Приглашения к совместному использованию
Разрешения, отправляемые API приглашения , могут содержать дополнительные сведения в аспекте приглашения . Если разрешение было отправлено на адрес электронной почты, не соответствующий известной учетной записи, свойство grantedTo может быть не задано, пока приглашение не будет активировано (это происходит, когда пользователь впервые переходит по ссылке и выполняет вход).
{
"id": "1",
"roles": ["write"],
"invitation": {
"email": "jd@fabrikam.com",
"signInRequired": true
},
"shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
}
Когда пользователь активирует приглашение к совместному использованию, в свойстве grantedTo появятся сведения об учетной записи, которая активировала разрешения:
{
"id": "1",
"roles": ["write"],
"grantedTo": {
"user": {
"id": "5D33DD65C6932946",
"displayName": "John Doe"
}
},
"invitation": {
"email": "jd@fabrikam.com",
"signInRequired": true
},
"shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
}
Методы
Метод | Путь REST |
---|---|
Получение списка разрешений | GET /drive/items/{item-id}/permissions |
Получение разрешения | GET /drive/items/{item-id}/permissions/{id} |
Создать ссылку | POST /drive/items/{item-id}/createLink |
Приглашение пользователей | POST /drive/items/{item-id}/invite |
Обновление | PATCH /drive/items/{item-id}/permissions/{id} |
Удаление | DELETE /drive/items/{item-id}/permissions/{id} |
Заметки
Библиотеки документов OneDrive для бизнеса и SharePoint не возвращают свойство inheritedFrom.