Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: Desarrollador
Use este artículo para planificar la autenticación y autorización de una aplicación de SharePoint Embedded.
Las aplicaciones de SharePoint Embedded usan Microsoft Graph para acceder a contenedores y contenido.
Para obtener la referencia de autenticación completa, vea Autenticación y autorización de SharePoint Embedded.
Principios básicos
La autenticación y autorización de SharePoint Embedded sigue estos principios:
- Las aplicaciones interactúan con SharePoint Embedded a través de Microsoft Graph.
- Las aplicaciones necesitan permisos de aplicación de tipo contenedor para tener acceso a contenedores de ese tipo de contenedor.
- Las aplicaciones solo pueden acceder a los contenedores de los que el usuario es miembro cuando se usa el acceso delegado en nombre de un usuario.
- Las aplicaciones pueden acceder a todos los contenedores habilitados por su tipo de contenedor permisos de aplicación cuando se usa el acceso solo de aplicación sin un usuario.
- Las aplicaciones deben usar el acceso delegado siempre que sea posible para mejorar la seguridad y la responsabilidad.
Requisitos previos
Planee lo siguiente:
- Un registro de aplicación de Microsoft Entra ID.
- Una suscripción a Microsoft 365 en el inquilino de Microsoft Entra ID.
- Permisos de Microsoft Graph para las operaciones de SharePoint Embedded.
- Permisos de aplicación de tipo de contenedor concedidos mediante el registro de tipo de contenedor.
- Consentimiento del Administrador en el inquilino consumidor.
Capas de permisos
El acceso a SharePoint Embedded tiene varias capas.
| Layer | Objetivo |
|---|---|
| Permiso de Microsoft Graph | Permite que la aplicación realice llamadas a puntos de conexión de SharePoint Embedded. |
| Tipo de contenedor Permiso de aplicación | Permite a la aplicación acceder a contenedores de un tipo de contenedor específico. |
| Permiso de contenedor | Determina lo que un usuario puede hacer en un contenedor específico para el acceso delegado. |
Importante
Los permisos de Microsoft Graph por sí solos no conceden acceso a los contenedores. La aplicación también debe tener permiso para un tipo de contenedor.
Acceso delegado
Acceso delegado significa que la aplicación actúa en nombre de un usuario.
Las operaciones de SharePoint Embedded en nombre de un usuario requieren permiso delegado de Microsoft Graph FileStorageContainer.Selected .
Este permiso delegado no requiere el consentimiento del administrador en el inquilino consumidor.
El usuario también debe tener permisos de contenedor.
Los permisos vigentes de la aplicación son la intersección de:
- Los permisos de aplicación concedidos para el tipo de contenedor.
- Los permisos de usuario en el contenedor.
Use el acceso delegado siempre que sea posible.
El acceso delegado mejora la auditabilidad, ya que las acciones se pueden asociar con el usuario.
Requisito de cliente confidencial para la creación de contenedores
La creación de un contenedor requiere una aplicación cliente confidencial , es decir, una que contenga un secreto o certificado de cliente y lo mantenga privado. Las llamadas que usan un token desde una aplicación cliente pública, como una aplicación de página única, una aplicación móvil o una aplicación de escritorio, fallan.
Planee un componente de back-end que adquiera el token y llame a Microsoft Graph cuando el front-end de la aplicación sea un cliente público. La creación de solo aplicaciones ya cumple este requisito porque el flujo de credenciales de cliente es confidencial.
Para obtener más información, vea Aplicaciones cliente públicas y cliente confidencial.
Acceso solo de aplicación
El acceso de solo aplicación significa que la aplicación actúa sin un usuario.
Las operaciones de SharePoint Embedded sin un usuario requieren el permiso de la aplicación Microsoft Graph FileStorageContainer.Selected .
Este permiso requiere el consentimiento del administrador en el espacio empresarial consumidor.
Con el acceso solo de aplicación, la aplicación puede acceder a todos los contenedores habilitados por sus permisos de aplicación de tipo de contenedor.
Use el acceso de solo aplicación para operaciones en segundo plano que no se puedan realizar en nombre de un usuario.
Aplicar privilegios mínimos al conceder permisos de aplicación de tipo de contenedor.
Consentimiento del administrador
Un administrador del inquilino consumidor debe dar su consentimiento a la solicitud de permiso de la aplicación.
Se requiere el consentimiento del Administrador para el permiso de la aplicaciónFileStorageContainer.Selected. Delegada FileStorageContainer.Selected no requiere el consentimiento del administrador.
El registro del tipo de contenedor también requiere el consentimiento de la aplicación propietaria para actuar en el inquilino consumidor.
Para el registro del tipo de contenedor, consulte Registro de almacenamiento de archivos Permisos de aplicación de tipo de contenedor.
Permisos de tipo de contenedor (Microsoft Graph)
La creación, la administración y el registro de tipos de contenedor ahora son operaciones de Microsoft Graph. Planee estos permisos:
| Permiso | Objetivo | Tenant |
|---|---|---|
FileStorageContainerType.Manage.All |
Crear y administrar tipos de contenedores en el inquilino propietario. | Solo en propiedad |
FileStorageContainerTypeReg.Selected |
Registre el tipo de contenedor en los inquilinos consumidores. | Consumiendo |
FileStorageContainer.Selected |
Contenedores de acceso del tipo de contenedor en los inquilinos consumidores. | Consumiendo |
FileStorageContainerType.Manage.All es un permiso delegado y no requiere el consentimiento del administrador. Cualquier usuario no invitado del inquilino propietario puede dar su consentimiento, usarlo para crear un tipo de contenedor y, a continuación, se asigna automáticamente como propietario de ese tipo de contenedor. (Antes de junio de 2026, esto requería el rol de administrador global o administrador de SharePoint Embedded).
Importante
FileStorageContainerType.Manage.All solo se necesita en el inquilino propietario para crear el tipo de contenedor. Quítelo del manifiesto de aplicación antes de distribuirlo a los inquilinos consumidores para que no se pida a los clientes permisos excesivos. Al consumir inquilinos solo FileStorageContainerTypeReg.Selected solicitud y FileStorageContainer.Selected.
Tipo de contenedor Permisos de aplicación
La aplicación propietaria concede los permisos de aplicación de tipo de contenedor a través del registro de tipo de contenedor.
Estos permisos definen lo que una aplicación puede hacer contra los contenedores del tipo de contenedor.
Los permisos de aplicación de tipo contenedor incluyen:
NoneReadContentWriteContentCreateDeleteReadWriteEnumeratePermissionsAddPermissionsUpdatePermissionsDeletePermissionsDeleteOwnPermissionManagePermissionsManageContentFull
Otorgue solo los permisos que necesita la aplicación.
Por ejemplo, no conceda Full a una aplicación invitada en segundo plano si solo necesita acceso de lectura para la copia de seguridad o el análisis.
Permisos de contenedor
Los permisos de contenedor se aplican a los usuarios.
Solo se aplican al acceso en nombre de un usuario.
Cualquier usuario que acceda a un contenedor debe ser miembro del contenedor.
La pertenencia a contenedores concede permisos de usuario para ese contenedor.
SharePoint Embedded admite estas funciones de contenedor:
| Role | Resumen |
|---|---|
| Lector | Lea las propiedades y el contenido del contenedor. |
| Redactor | Permisos de lector además de crear, actualizar y eliminar contenido y actualizar las propiedades del contenedor aplicables. |
| Administrador | Permisos de escritor y administrar la pertenencia al contenedor. |
| Owner | Permisos de administrador y eliminar contenedores. |
Cuando un usuario crea un nuevo contenedor a través de llamadas delegadas, se asigna automáticamente el rol de propietario a ese usuario.
Propietarios del tipo de contenedor
Los propietarios de tipos de contenedor son distintos de los propietarios de contenedores. Rigen el propio tipo de contenedor, en el inquilino propietario .
- Asignación automática: El usuario que crea un tipo de contenedor se asigna automáticamente como propietario.
-
Agregar o quitar propietarios: use la relación de tipo
permissionsde contenedor (beta) para administrar hasta tres propietarios por tipo de contenedor:POST /storage/fileStorage/containerTypes/{id}/permissionsagrega un propietario yDELETE /storage/fileStorage/containerTypes/{id}/permissions/{permissionId}quita un permiso de propietario específico. -
Funcionalidades: con
FileStorageContainerType.Manage.Allel modo delegado, los propietarios pueden crear, leer, actualizar y eliminar el tipo de contenedor que poseen, administrar sus propietarios y crear contenedores de ese tipo (solo llamadas delegadas). - Restricciones: las identidades externas (usuarios invitados) no pueden ser propietarias del tipo de contenedor. La información del propietario solo existe en el inquilino propietario y no se propaga a los inquilinos consumidores en el registro.
- Acceso efectivo: las capacidades del propietario son permisos de usuario; El acceso efectivo es la intersección de los permisos de Graph de la aplicación y el rol de propietario.
Implicaciones del registro del tipo de contenedor
Para que la aplicación propietaria actúe en un inquilino consumidor:
- La aplicación propietaria debe tener una entidad de servicio instalada en el inquilino consumidor.
- A la aplicación propietaria se le debe conceder el consentimiento del administrador para realizar el registro del tipo de contenedor.
- Solo la aplicación propietaria del tipo de contenedor puede invocar la API de registro en el inquilino consumidor.
La API de registro especifica permisos para la aplicación propietaria y cualquier aplicación invitada.
La última llamada a la API de registro correcta determina la configuración que se usa en el espacio empresarial consumidor.
Patrones de acceso excepcionales
Planifique las operaciones que no siguen el patrón normal de autorización de Microsoft Graph.
Los patrones de acceso excepcionales incluyen:
- Administración del tipo de contenedor en inquilinos propietarios a través de Microsoft Graph.
- Registro del tipo de contenedor en los inquilinos consumidores a través de Microsoft Graph (
FileStorageContainerTypeReg.Selected). - Operaciones administrativas de contenedores que requieren
FileStorageContainer.Manage.Allun administrador de SharePoint Embedded o un usuario que haya iniciado sesión como administrador global. - Escenarios de Búsqueda de Microsoft que requieren permisos adicionales durante la versión preliminar.
- Operaciones que actualmente requieren una licencia de usuario.
Revíselas antes de diseñar características con privilegios o con muchas búsquedas.
Consideraciones acerca de la seguridad
- Prefiere el acceso delegado para las operaciones controladas por el usuario.
- Use el acceso solo de la aplicación cuando sea necesario para las operaciones de servicio.
- Conceda el privilegio mínimo en el nivel de tipo de contenedor.
- Conceder privilegios mínimos en el nivel de pertenencia al contenedor.
- Requerir el consentimiento del administrador en el espacio empresarial correcto.
- Trate el registro como parte de la incorporación de clientes.
- Evite el acceso amplio a aplicaciones de invitado a menos que el escenario lo requiera.
- Revise las implicaciones de auditoría y cumplimiento con los administradores de inquilinos.
Lista de comprobación de la planificación
- Registre la aplicación Microsoft Entra ID.
- Decida qué operaciones usan el acceso delegado.
- Decida qué operaciones usan el acceso solo de aplicación.
- Solicitar permisos de Microsoft Graph
FileStorageContainer.Selected. - Solicite Microsoft Graph
FileStorageContainerType.Manage.All(inquilino propietario) eFileStorageContainerTypeReg.Selected(inquilinos consumidores) para la creación y el registro del tipo de contenedor. - Planifique el consentimiento del administrador en cada inquilino consumidor.
- Definir permisos de aplicación de tipo de contenedor.
- Definir roles de contenedor de usuario.
- Identifique las aplicaciones invitadas y sus permisos.
- Revise los patrones de acceso excepcionales.
Pasos siguientes
Revise las restricciones de escala y rendimiento: comprenda los límites y los patrones de llamada.