Uso compartido y permisos en SharePoint Embedded
Permisos aditivos
En SharePoint Embedded, el contenido siempre hereda los permisos de su jerarquía primaria. Aunque no puede modificar esta estructura de permisos heredada, puede ampliar el acceso dentro de un contenedor aplicando "permisos aditivos" a archivos y carpetas específicos. Por ejemplo, si UserA pertenece al rol Lector, puede conceder al usuario permiso de edición a un documento determinado de ese contenedor mediante Microsoft Graph:
Escenario | Microsoft Graph API(s) | Notas |
---|---|---|
Concesión de un permiso aditivo | POST /drives/{drive-id}/items/{item-id}/invite | La propiedad sendInvitation siempre debe ser false. No se pueden conceder permisos aditivos a la carpeta raíz de un contenedor, ya que esto es básicamente lo mismo que agregar un usuario a un rol. No puede usar permisos de AppOnly. |
Recuperar permisos | GET /drives/{drive-id}/items/{item-id}/permissions & GET /drives/{drive-id}/items/{item-id}/permissions/{perm-id}, | |
Eliminación de un permiso aditivo | DELETE /drives/{drive-id}/items/{item-id}/permissions/{perm-id} | Solo puede eliminar el permiso aditivo en el elemento de unidad donde se agregó originalmente. |
Configuración de uso compartido basado en roles
SharePoint Embedded ofrece un modelo de uso compartido basado en roles que permite a los desarrolladores configurar permisos de uso compartido de archivos basados en roles de permisos de contenedor, lo que ofrece una opción entre el modelo de uso compartido restrictivo y abierto. De forma predeterminada, la configuración de uso compartido está configurada para el modelo abierto, lo que permite que todos los usuarios compartan contenido sin restricciones. Esta configuración de uso compartido forma parte de la configuración del tipo de contenedor. Los desarrolladores del propietario de la aplicación solo pueden establecer esta configuración. Para más información sobre los roles de permisos de contenedor, consulte Autenticación y autorización con SharePoint Embedded.
Modelo de uso compartido restrictivo
Solo los miembros del contenedor que son los roles Propietario o Administrador pueden agregar nuevos permisos a los archivos.
Modelo de uso compartido abierto
Los miembros e invitados de contenedor con permisos de edición pueden agregar nuevos permisos a este archivo.
Esto se puede configurar mediante el cmdlet set-SPOcontainerTypeConfiguration de PowerShell según este ejemplo:
Set-SPOcontainerTypeConfiguration
-containerTypeID <containerTypeID>
-sharingRestricted $false
Configuración de uso compartido
De forma predeterminada, la configuración de uso compartido de aplicaciones de SharePoint Embedded es la misma que la configuración de uso compartido de inquilinos de consumo. Por ejemplo, si el inquilino de consumo está configurado para deshabilitar el uso compartido de invitados, la aplicación de SharePoint Embedded no puede agregar invitados a roles de contenedor ni concederles permisos adicionales.
Invalidación del uso compartido externo de la aplicación
En el caso de las aplicaciones de SharePoint Embedded, las configuraciones de uso compartido se pueden ajustar en el nivel de aplicación. El administrador de inquilinos que consume puede configurar permisos distintos de los valores de uso compartido de nivel de inquilino. Por ejemplo, si la configuración de uso compartido de un inquilino prohíbe el uso compartido con invitados, las aplicaciones de SharePoint Embedded se pueden configurar para permitir el uso compartido de invitados. Por lo tanto, todos los contenedores dentro de esa aplicación de SharePoint Embedded tendrían la capacidad de incluir invitados o ampliar otros permisos, mientras que otras aplicaciones de SharePoint Embedded y SharePoint mantienen permisos de uso compartido restringidos.
Esta configuración solo se puede establecer mediante el uso del administrador de SharePoint Embedded del inquilino y se puede configurar mediante el cmdlet de PowerShell más reciente Set-SPOApplication , como se muestra en este ejemplo:
Set-SPOApplication
-OwningApplicationID <OwningApplicationId>
-OverrideTenantSharingCapability $true
-SharingCapability <SharingCapability>