Enumerar permisos de uso compartido en un driveItem
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.
Enumere los permisos de uso compartido efectivos en un driveItem.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Acceso a permisos de uso compartido
La colección de permisos incluye información potencialmente confidencial y puede no estar disponible para todos los autores de llamadas.
- Para el propietario del elemento, se devuelven todos los permisos de uso compartido. Incluye copropietarios.
- Para un autor de llamada que no sea el propietario, se devuelven solo los permisos de uso compartido que se aplican al autor de la llamada.
- Las propiedades de permisos de uso compartido que contienen secretos (por ejemplo,
shareId
ywebUrl
) solo se devuelven para los autores de llamadas que pueden crear el permiso de uso compartido.
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | Files.Read | Files.Read.All, Files.ReadWrite, Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Delegado (cuenta personal de Microsoft) | Files.Read | Files.Read.All, Files.ReadWrite, Files.ReadWrite.All |
Aplicación | Files.Read.All | Files.ReadWrite.All, Sites.Read.All, Sites.ReadWrite.All |
Solicitud 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
Parámetros de consulta opcionales
Este método admite los $select
parámetros de consulta de OData para personalizar la respuesta.
Encabezados de solicitud opcionales
Nombre | Tipo | Descripción |
---|---|---|
if-none-match | string | Si se incluye este encabezado de la solicitud y el ETag proporcionado coincide con el ETag actual del elemento, se devuelve una respuesta HTTP 304 Not Modified . |
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
y una colección de recursos de Permission en el cuerpo de la respuesta.
Los permisos de uso compartido efectivos de un driveItem pueden proceder de dos orígenes:
- Permisos de uso compartido aplicados directamente en el propio driveItem
- Permisos de uso compartido heredados de los antecesores de driveItem
Los autores de llamadas pueden distinguir si el permiso se hereda o no comprobando la propiedad inheritedFrom. Esta propiedad es un recurso itemReference que hace referencia al antecesor del que se hereda el permiso.
Ejemplo
En este ejemplo, se recupera la colección de permisos en un elemento de la unidad del usuario que ha iniciado sesión.
GET /me/drive/items/{item-id}/permissions
Respuesta
Esta respuesta de ejemplo incluye tres permisos, el primero es un vínculo para compartir con permisos de edición, el segundo es un permiso explícito para un usuario llamado John, que se ha heredado de una carpeta principal, y el tercero es un vínculo para compartir de lectura y escritura creado por una aplicación.
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",
"@deprecated.GrantedTo": "GrantedTo has been deprecated. Refer to GrantedToV2",
"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"
}
},
"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"
}
}
}
]
}
Comentarios
La relación de permisos de driveItem no se puede expandir como parte de una llamada para obtener driveItem o una colección de driveItems. Debe tener acceso a la propiedad de permisos directamente.
Respuestas de error
Lea el tema Respuestas de error para obtener más información sobre cómo se devuelven los errores.