Tipo de recurso Permission

El recurso Permission proporciona información sobre un permiso de uso compartido concedido para un recurso DriveItem.

Los permisos de uso compartido tienen varias formas diferentes. El recurso Permission representa estas formas diferentes a través de facetas en el recurso.

Representación JSON

Aquí tiene una representación JSON del recurso

{
  "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"
}

Propiedades

Propiedad Tipo Descripción
id String El identificador único del permiso entre todos los permisos del elemento. Solo lectura.
grantedTo IdentitySet Para los permisos de tipo de usuario, los detalles de los usuarios y aplicaciones para este permiso. Solo lectura.
grantedToIdentities Collection(IdentitySet) Para los permisos de tipo de vínculo, la información de los usuarios a los que se les ha concedido el permiso. Solo lectura.
invitation SharingInvitation Detalles de cualquier invitación para uso compartido asociada de este permiso. Solo lectura.
inheritedFrom ItemReference Proporciona una referencia al antecesor del permiso actual, si se ha heredado de un antecesor. Solo lectura.
link SharingLink Proporciona los detalles del vínculo del permiso actual, si es un permiso de tipo de vínculo. Solo lectura.
roles Collection(String) Tipo de permiso, por ejemplo, read. Más adelante encontrará una lista completa de roles. Solo lectura.
shareId String Un token único que se puede usar para tener acceso a este elemento compartido a través de la API shares. Solo lectura.

Enumeración de roles

Rol Detalles
read Proporciona la capacidad de leer los metadatos y el contenido del elemento.
write Proporciona la capacidad de leer y modificar los metadatos y el contenido del elemento.
owner Para SharePoint y OneDrive para la Empresa, representa el rol de propietario.
member Para SharePoint y OneDrive para la Empresa, representa el rol de miembro.

El recurso de permiso usa facetas para proporcionar información sobre el tipo de permiso que representa el recurso.

Los vínculos de uso compartido contienen un token único que es necesario para obtener acceso al elemento.

Los permisos con una faceta de invitación representan los permisos agregados invitando a usuarios o grupos específicos a tener acceso al archivo.

Los permisos con una faceta link representan vínculos para compartir creados en el elemento. Estos son los tipos de permisos más comunes. Los vínculos de uso compartido proporcionan una dirección URL única que se puede usar para obtener acceso a un archivo o carpeta. Se pueden configurar para conceder acceso de varias formas. Por ejemplo, puede usar la API CreateLink para crear un vínculo para cualquier persona que haya iniciado sesión en su organización, o bien puede crear un vínculo para todos los usuarios, sin necesidad de iniciar sesión. Puede usar la API invite para crear un vínculo que solo funcione para determinados usuarios, tanto si están en su empresa como si no.

A continuación, se incluyen algunos ejemplos de vínculos de uso compartido:

Este vínculo de visualización proporciona acceso de solo lectura a cualquier persona con el vínculo.

{
  "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"
}

Este vínculo de edición ofrece acceso de lectura y escritura para cualquier persona de la organización con el vínculo.

{
  "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"
}

Este vínculo proporciona acceso de lectura y escritura a los usuarios específicos de la colección 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"
}

Invitaciones de uso compartido

Los permisos enviados por la API de invitación pueden tener información adicional en la faceta de invitación . Si se ha enviado una invitación mediante una dirección de correo electrónico que no coincide con una cuenta existente, la propiedad grantedTo puede no establecerse hasta que la invitación se canjee, lo que se produce la primera vez que un usuario hace clic en el vínculo e inicia sesión.

{
  "id": "1",
  "roles": ["write"],
  "invitation": {
    "email": "jd@fabrikam.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
}

Después de que la invitación de uso compartido se ha canjeado por un usuario, la propiedad grantedTo contendrá la información sobre la cuenta que canjea los permisos:

{
  "id": "1",
  "roles": ["write"],
  "grantedTo": {
    "user": {
      "id": "5D33DD65C6932946",
      "displayName": "John Doe"
    }
  },
  "invitation": {
    "email": "jd@fabrikam.com",
    "signInRequired": true
  },
  "shareId": "FWxc1lasfdbEAGM5fI7B67aB5ZMPDMmQ11U"
}

Métodos

Método Ruta de acceso a REST
Enumerar permisos GET /drive/items/{item-id}/permissions
Obtener permiso GET /drive/items/{item-id}/permissions/{id}
Crear vínculo POST /drive/items/{item-id}/createLink
Invitar a personas POST /drive/items/{item-id}/invite
Actualizar PATCH /drive/items/{item-id}/permissions/{id}
Eliminar DELETE /drive/items/{item-id}/permissions/{id}

Comentarios

Las bibliotecas de documentos de OneDrive para la Empresa y SharePoint no devuelven la propiedad inheritedFrom.