Répertorier les autorisations de partage sur une ressource DriveItem
Découvrez comment répertorier les autorisations de partage effectives sur une ressource DriveItem.
Accès aux autorisations de partage
La collection d’autorisations inclut des informations potentiellement sensibles et peut ne pas être disponible pour chaque appelant.
- Pour le propriétaire de l’élément, toutes les autorisations de partage sont renvoyées. Cela inclut les copropriétaires.
- Pour un appelant non propriétaire, seules les autorisations de partage qui s’appliquent à l’appelant sont renvoyées.
- Les propriétés d’autorisation de partage qui contiennent des secrets (par exemple,
shareId
etwebUrl
) ne sont renvoyées que pour les appelants capables de créer l’autorisation de partage.
Autorisations
L’une des autorisations suivantes est nécessaire pour appeler cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.
Type d’autorisation | Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins) |
---|---|
Déléguée (compte professionnel ou scolaire) | Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Déléguée (compte Microsoft personnel) | Files.Read, Files.ReadWrite, Files.Read.All, Files.ReadWrite.All |
Application | Files.Read.All, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Requête HTTP
GET /drives/{drive-id}/items/{item-id}/permissions
GET /groups/{group-id}/drive/items/{item-id}/permissions
GET /me/drive/items/{item-id}/permissions
GET /me/drive/root:/{path}:/permissions
GET /sites/{siteId}/drive/items/{itemId}/permissions
GET /users/{userId}/drive/items/{itemId}/permissions
Paramètres facultatifs de la requête
Cette méthode prend en charge les $select
paramètres de requête OData pour personnaliser la réponse.
En-têtes de demande facultatifs
Nom | Type | Description |
---|---|---|
if-none-match | string | Si cet en-tête de demande est inclus et que l’ETag fourni correspond à l’identité actuelle sur l’élément, une réponse HTTP 304 Not Modified est renvoyée. |
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 200 OK
et une collection de ressources Permission dans le corps de la réponse.
Les autorisations de partage effectives d’une ressource DriveItem peuvent provenir de deux sources :
- Autorisations de partage appliquées directement à la ressource DriveItem
- Autorisations de partage héritées des ancêtres de la ressource DriveItem
Les appelants peuvent distinguer si l’autorisation est héritée ou non en vérifiant la propriété inheritedFrom. Cette propriété est une ressource itemReference faisant référence à l’ancêtre dont l’autorisation est héritée.
Les niveaux d’autorisation SharePoint définis sur un élément sont renvoyés avec le préfixe « SP ». Par exemple, SP.Affichage seul, SP.Accès limité, SP.Afficher les données Web Analytics. Voir la liste complète des rôles SharePoint.
Exemple
Cet exemple récupère la collection d’autorisations sur un élément dans le lecteur de l’utilisateur connecté.
GET /me/drive/items/{item-id}/permissions
Réponse
Cet exemple de réponse comprend trois autorisations : la première correspond à un lien de partage avec des autorisations de modification, la deuxième est une autorisation explicite pour un utilisateur nommé John, qui est héritée d’un dossier parent, et la troisième est un lien de partage en lecture-écriture créé par une application.
HTTP/1.1 200 OK
Content-Type: application/json
{
"value": [
{
"id": "1",
"roles": ["write"],
"link": {
"webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
"type": "edit"
}
},
{
"id": "2",
"roles": ["write"],
"grantedTo": {
"user": {
"id": "5D33DD65C6932946",
"displayName": "John Doe"
}
},
"inheritedFrom": {
"driveId": "1234567890ABD",
"id": "1234567890ABC!123",
"path": "/drive/root:/Documents" }
},
{
"id": "3",
"roles": ["write"],
"link": {
"webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
"type": "edit",
"application": {
"id": "12345",
"displayName": "Contoso Time Manager"
}
}
}
]
}
Remarques
La relation autorisations de DriveItem ne peut pas être développée dans le cadre d’un appel pour obtenir DriveItem ou une collection d’objets DriveItem. Vous devez accéder directement à la propriété autorisations.
Réponses d’erreur
Pour plus d’informations sur la façon dont les erreurs sont renvoyées, voir Réponses d’erreur.