tipo de recurso permission

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

El recurso permission proporciona información sobre un permiso de uso compartido concedido para un recurso driveItem .

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

Nota: OneDrive para la Empresa y las bibliotecas de documentos de SharePoint no devuelven la propiedad inheritedFrom.

OneDrive para la Empresa y las bibliotecas de documentos de SharePoint no devuelven la propiedad inheritedFrom. grantedTo y grantedToIdentities quedarán en desuso en el futuro y la respuesta se migrará se grantedToV2 y grantedToIdentitiesV2 respectivamente en los nombres de propiedad adecuados.

Representación JSON

La siguiente representación JSON muestra el tipo de recurso.

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

Propiedades

Propiedad Tipo Descripción
id String El identificador único del permiso entre todos los permisos del elemento. Solo lectura.
grantedToV2 SharePointIdentitySet Para los permisos de tipo de usuario, los detalles de los usuarios y aplicaciones para este permiso. Solo lectura.
grantedToIdentitiesV2 Colección(SharePointIdentitySet) 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 hereda 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) El tipo de permiso, por ejemplo, read. Consulte la sección Roles property values (Valores de propiedad roles) para obtener la 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.
expirationDateTime DateTimeOffset Un formato de aaaa-mm-ddThh:mm:ssZ de DateTimeOffset indica la hora de expiración del permiso. DateTime.MinValue indica que no hay ningún conjunto de expiración establecido para este permiso. Opcional.
hasPassword Booleano Indica si la contraseña está establecida para este permiso. Esta propiedad solo aparece en la respuesta. Opcional. Solo lectura. Solo para OneDrive Personal.
grantedTo (en desuso) IdentitySet Para los permisos de tipo de usuario, los detalles de los usuarios y aplicaciones para este permiso. Solo lectura.
grantedToIdentities (en desuso) 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.

Roles y valores de la propiedad

Valor Description
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.

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 maneras. 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",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

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",
  "expirationDateTime": "0001-01-01T00:00:00Z"
}

Este vínculo no concede privilegios adicionales al usuario.

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

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"
      }
    }
  ],
  "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"
}

Uso compartido de invitaciones

Los permisos enviados por la API de invitación o concesión pueden tener información adicional en la faceta de invitación para las direcciones de correo electrónico que no coinciden con una cuenta conocida. En tales casos, es posible que la propiedad grantedTo no se establezca hasta que se canjee el vínculo de invitación, que se produce la primera vez que el usuario hace clic en el vínculo e inicia sesión.

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

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": "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é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}
Agregar usuarios al enlace para compartir POST /shares/{encoded-sharing-url}/permission/grant
Revocación de concesiones POST /drive/items/{item-id}/permissions/{id}/revokeGrants