Type de ressource Permission

Espace de noms: microsoft.graph

La ressource Permission fournit des informations sur une autorisation de partage octroyée pour une ressource DriveItem.

Les autorisations de partage ont de nombreuses formes différentes. La ressource d’autorisation représente ces différents formulaires par le biais de facettes sur la ressource.

OneDrive Entreprise et les bibliothèques de documents SharePoint ne retournent pas la propriété inheritedFrom. grantedTo et grantedToIdentities sont déconseillés à l’avenir et la réponse sera migrée vers grantedToV2 et grantedToIdentitiesV2 respectivement sous les noms de propriétés appropriés.

Représentation JSON

La représentation JSON suivante montre le type de ressource.


{
  "id": "string (identifier)",
  "grantedTo": {"@odata.type": "microsoft.graph.identitySet"},
  "grantedToIdentities": [{"@odata.type": "microsoft.graph.identitySet"}],
  "grantedToV2": {"@odata.type": "microsoft.graph.sharePointIdentitySet"},
  "grantedToIdentitiesV2": [{"@odata.type": "microsoft.graph.sharePointIdentitySet"}],
  "inheritedFrom": {"@odata.type": "microsoft.graph.itemReference"},
  "invitation": {"@odata.type": "microsoft.graph.sharingInvitation"},
  "link": {"@odata.type": "microsoft.graph.sharingLink"},
  "roles": ["string"],
  "shareId": "string",
  "expirationDateTime": "string (timestamp)",
  "hasPassword": "boolean"
}

Propriétés

Propriété Type Description
expirationDateTime DateTimeOffset La ressource Permission fournit des informations sur une autorisation de partage octroyée pour une ressource DriveItem. DateTime.MinValue indique qu’aucune expiration n’est définie pour cette autorisation. Optional.
id String L’identificateur unique de l’autorisation parmi toutes les autorisations sur l’élément. En lecture seule.
hasPassword Boolean Indique si le mot de passe est définie pour cette autorisation. Cette propriété apparaît uniquement dans la réponse. Facultatif. En lecture seule. Pour OneDrive Personnel uniquement.
grantedTo (deprecated) IdentitySet Pour les autorisations de type utilisateur, les détails des utilisateurs et des applications pour cette autorisation. En lecture seule.
grantedToIdentities (deprecated) Collection(IdentitySet) Pour les autorisations de type, les détails des utilisateurs auxquels l’autorisation a été accordée. En lecture seule.
grantedToIdentitiesV2 Collection(SharePointIdentitySet) Pour les autorisations de type lien, les détails des utilisateurs auxquels l’autorisation a été accordée. En lecture seule.
grantedToV2 SharePointIdentitySet Pour les autorisations de type utilisateur, les détails des utilisateurs et des applications pour cette autorisation. En lecture seule.
inheritedFrom ItemReference Fournit une référence à l’ancêtre de l’autorisation actuelle, si elle est héritée d’un ancêtre. En lecture seule.
invitation SharingInvitation Détails d’une invitation de partage pour cette autorisation. En lecture seule.
link SharingLink Fournit les détails du lien de l’autorisation actuelle, s’il s’agit d’une autorisation de type de lien. En lecture seule.
roles Collection de chaînes Type d’autorisation, par exemple, read. Voir ci-dessous pour une liste complète des rôles. En lecture seule.
shareId String Jeton unique qui peut être utilisé pour accéder à cet élément partagé via l’API shares. En lecture seule.

La ressource d’autorisation utilise des facettes pour fournir des informations sur le type d’autorisation représenté par la ressource.

Les autorisations avec une facette link représentent les liens de partage créés sur l’élément. Les liens de partage contiennent un jeton unique qui permet à toute personne disposant du lien d’accéder à l’élément.

Les autorisations avec une facette d’invitation représentent les autorisations ajoutées en invitant des utilisateurs ou des groupes spécifiques à accéder au fichier.

Valeurs des propriétés des rôles

Valeur Description
read Permet de lire les métadonnées et le contenu de l’élément.
write Permet de lire et de modifier les métadonnées et le contenu de l’élément.
owner Pour SharePoint et OneDrive Entreprise, cela représente le rôle du propriétaire.

Le type d’autorisations le plus courant est le partage de liens. Les liens de partage fournissent une URL unique qui comprend à la fois la ressource partagée et un jeton d’authentification qui octroie un accès à la ressource. Les utilisateurs n’ont pas à se connecter pour accéder à du contenu partagé avec un lien de partage. Les utilisateurs peuvent partager un lien qui leur donne un accès en lecture ou un accès en écriture au contenu.

Un lien d’affichage offre un accès en lecture seule à un élément.

{
  "id": "1",
  "roles": ["read"],
  "link": {
    "type": "view",
    "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Un lien de modification fournit un accès en lecture-écriture à un élément.

{
  "id": "2",
  "roles": ["write"],
  "link": {
    "type": "edit",
    "webUrl": "https://onedrive.live.com/redir?resid=5D33DD65C6932946!70859&authkey=!AL7N1QAfSWcjNU8&ithint=folder%2cgif",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Ce lien fournit l’accès en lecture et en écriture aux personnes spécifiques de la collection grantedToIdentities.

{
  "id": "3",
  "grantedToIdentities": [
    {
       "user": {
        "id": "35fij1974gb8832",
        "displayName": "Misty Suarez"
      }
    },
    {
       "user": {
        "id": "9397721fh4hgh73",
        "displayName": "Judith Clemons"
      }
    }
  ],
  "grantedToIdentitiesV2": [
    {
       "user": {
        "id": "35fij1974gb8832",
        "displayName": "Misty Suarez"
      },
      "siteUser": {
        "id": "1",
        "displayName": "Misty Suarez",
        "loginName": "Misty Suarez"
      }
    },
    {
       "user": {
        "id": "9397721fh4hgh73",
        "displayName": "Judith Clemons"
      },
      "siteUser": {
        "id": "2",
        "displayName": "Judith Clemons",
        "loginName": "Judith Clemons"
      }
    }
  ],
  "roles": ["write"],
  "link": {
    "webUrl": "https://contoso.sharepoint.com/:w:/t/design/a577ghg9hgh737613bmbjf839026561fmzhsr85ng9f3hjck2t5s",
    "application": { "id": "1234", "displayName": "Sample Application" }
  },
  "shareId": "!LKj1lkdlals90j1nlkascl",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Ce lien n’accorde aucun privilège supplémentaire à l’utilisateur.

{
  "id": "00000000-0000-0000-0000-000000000000",
  "roles": ["read"],
  "link": {
    "scope": "existingAccess",
    "type": "view",
    "webUrl": "https://contoso.sharepoint.com/:w:/t/design/Shared%20Documents/SampleDoc.docx?d=w12345",
  },
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Invitation de partage

Outre la création de liens de partage, un utilisateur peut être invité par le biais de son adresse de messagerie. Dans ce scénario, l’autorisation crée une invitation qui est envoyée à l’e-mail de l’utilisateur.

Invitation à une adresse de messagerie

Si l’autorisation a été envoyée via une adresse e-mail à un destinataire qui n’a pas de compte correspondant, la propriété grantedTo ne peut pas être définie tant que l’invitation n’est pas utilisée, ce qui se produit la première fois qu’un utilisateur sélectionne le lien et se connecte.

{
  "id": "1",
  "roles": ["write"],
  "invitation": {
    "email": "jd@contoso.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Une fois que l’invitation de partage a été activée par un utilisateur, la propriété grantedTo contient les informations sur le compte qui a activé les autorisations :

{
  "id": "1",
  "roles": ["write"],
  "grantedTo": {
    "user": {
      "id": "5D33DD65C6932946",
      "displayName": "Robin Danielsen"
    }
  },
  "grantedToV2": {
    "user": {
      "id": "5D33DD65C6932946",
      "displayName": "Robin Danielsen"
    },
    "siteUser": {
      "id": "1",
      "displayName": "Robin Danielsen",
      "loginName": "Robin Danielsen"
    }
  },
  "invitation": {
    "email": "rd@contoso.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Méthodes

Méthode Chemin d’accès REST
Autorisations de liste GET /drive/items/{item-id}/permissions
Obtenir une autorisation GET /drive/items/{item-id}/permissions/{id}
Ajouter POST /drive/items/{item-id}/invite
Mettre à jour PATCH /drive/items/{item-id}/permissions/{id}
Delete DELETE /drive/items/{item-id}/permissions/{id}
Partager le lien avec d'autres utilisateurs POST /shares/{encoded-sharing-url}/permission/grant