Compartir a través de


Autenticación y autorización de SharePoint Embedded

Para usar SharePoint Embedded, la aplicación debe usar Microsoft Graph. Obtenga más información sobre la autenticación y autorización de Microsoft Graph. Obtenga más información sobre la arquitectura de SharePoint Embedded.

Información general

Estos son algunos principios clave con la autenticación y autorización de SharePoint Embedded:

  • Las aplicaciones interactúan con SharePoint Embedded a través de Microsoft Graph.
  • Las aplicaciones necesitan permisos de aplicación de tipo contenedor para acceder a contenedores de ese tipo de contenedor.
  • Al usar el acceso en nombre de un usuario, las aplicaciones solo pueden acceder a los contenedores de los que el usuario es miembro.
  • Cuando se usa el acceso sin un usuario, las aplicaciones pueden acceder a los contenedores habilitados por los permisos de aplicación de tipo contenedor que se les han concedido.
  • Las aplicaciones usan el acceso en nombre de los usuarios siempre que sea posible para mejorar la seguridad y la auditabilidad

Requisitos previos

  • Un registro de aplicación de Microsoft Entra ID. Consulte Registro de una aplicación.
  • El inquilino de Microsoft Entra ID tiene una suscripción a Microsoft 365

Autorización

Las operaciones de SharePoint Embedded se exponen a través de Microsoft Graph. SharePoint Embedded admite el acceso en nombre de un usuario y también el acceso sin un usuario.

Importante

Los permisos de Microsoft Graph concedidos a la aplicación le permiten llamar a puntos de conexión de SharePoint Embedded. Sin embargo, a la aplicación se le deben conceder permisos para un tipo de contenedor antes de obtener acceso a contenedores de ese tipo.

Acceso en nombre de un usuario

Las operaciones de SharePoint Embedded en nombre de un usuario requieren que las aplicaciones reciban consentimiento para el permiso delegado de Microsoft Graph FileStorageContainer.Selected . Este permiso requiere el consentimiento del administrador en el inquilino que consume antes de que cualquier usuario del inquilino pueda dar su consentimiento.

Además de que la aplicación recibe consentimiento para FileStorageContainer.Selected en un inquilino que consume, el usuario del que actúa en nombre de debe tener permisos de contenedor. Los permisos efectivos que tiene la aplicación son la intersección de los permisos de aplicación y los permisos de usuario al actuar en nombre de un usuario.

Importante

El uso de SharePoint Embedded en nombre de un usuario es el enfoque recomendado. Este tipo de acceso mejora la seguridad de la aplicación. También mejora la auditabilidad de las acciones realizadas por la aplicación.

Acceso sin un usuario

Las operaciones de SharePoint Embedded sin un usuario requieren que las aplicaciones reciban consentimiento para el permiso de aplicación de Microsoft Graph FileStorageContainer.Selected . Este permiso requiere el consentimiento del administrador en el inquilino que consume.

Nota:

Un administrador del inquilino que consume debe dar su consentimiento a la solicitud de permisos de la aplicación. Obtenga más información aquí.

Patrones de acceso excepcionales

Actualmente, hay dos tipos de operaciones a las que no se puede acceder a través de Microsoft Graph:

Para realizar operaciones de administración de tipos de contenedor , debe ser administrador de SharePoint Embedded o administrador global.

Para registrar un tipo de contenedor, debe solicitar el Container.Selected permiso en el Office 365 SharePoint Online recurso.

Nombre de ámbito Identificador de ámbito Tipo Operación
Container.Selected 19766c1b-905b-43af-8756-06526ab42875 Aplicación En el contexto de SharePoint Embedded, habilita el registro de tipos de contenedor en un inquilino que consume.

Nota:

La administración de tipos de contenedor en inquilinos propietarios y el registro en inquilinos de consumo se convertirán pronto en operaciones de Microsoft Graph y este paso ya no será necesario. Manténgase atento.

Permisos de aplicación de tipo contenedor

La aplicación propietaria debe conceder permisos de aplicación de tipo contenedor a las aplicaciones de SharePoint Embedded para que puedan acceder a contenedores del tipo de contenedor especificado. Los permisos de aplicación de tipo contenedor se conceden a las aplicaciones a través del registro de tipos de contenedor.

Permiso Descripción
Ninguno No tiene permisos para ningún contenedor o contenido de este tipo de contenedor.
ReadContent Puede leer el contenido de los contenedores de este tipo de contenedor.
WriteContent Puede escribir contenido en contenedores para este tipo de contenedor. Esto no se puede conceder sin el permiso ReadContent.
Crear Puede crear contenedores de este tipo de contenedor.
Delete Puede eliminar contenedores de este tipo de contenedor.
Lectura Puede leer los metadatos de los contenedores de este tipo de contenedor.
Escritura Puede actualizar los metadatos de los contenedores de este tipo de contenedor.
EnumeratePermissions Puede enumerar los miembros de un contenedor y sus roles para contenedores de este tipo de contenedor.
AddPermissions Puede agregar miembros al contenedor para contenedores de este tipo de contenedor.
UpdatePermissions Puede actualizar (cambiar roles de) pertenencias existentes en el contenedor para contenedores de este tipo de contenedor.
DeletePermissions Puede eliminar otros miembros (pero no uno mismo) del contenedor para contenedores de este tipo de contenedor.
DeleteOwnPermissions Puede quitar la pertenencia propia del contenedor para contenedores de este tipo de contenedor.
ManagePermissions Puede agregar, quitar (incluido el autoservicio) o actualizar miembros en los roles de contenedor para contenedores de este tipo de contenedor.
Full Tiene todos los permisos para contenedores de este tipo de contenedor.

Nota:

La combinación de permisos de Microsoft Graph y permisos de aplicación de tipo contenedor abarca la autorización de cliente para las aplicaciones.

Permisos de contenedor

Cualquier usuario que acceda a un contenedor debe ser miembro del contenedor. La pertenencia a un contenedor concede a los usuarios permisos de contenedor. Estos permisos definen el nivel de acceso que los usuarios tienen en un contenedor determinado. Los permisos de contenedor solo se aplican al acceso en nombre de un usuario y no al acceso sin un usuario. En su lugar, una aplicación de SharePoint Embedded que accede a contenedores sin un usuario obtiene el acceso completo definido en sus permisos de aplicación de tipo contenedor .

Importante

Al usuario que llama creando un nuevo contenedor mediante llamadas delegadas se le asigna automáticamente el rol Propietario.

Permiso Descripción
Lector Este rol permite al usuario leer las propiedades y el contenido del contenedor.
Redactor Este rol tiene todos los permisos que tiene un lector, además del permiso para crear, actualizar y eliminar contenido dentro del contenedor y para actualizar las propiedades de contenedor aplicables.
Administrador Este rol tiene todos los permisos que tiene un escritor, además del permiso para administrar la pertenencia al contenedor.
Owner Este rol tiene todos los permisos que tiene un administrador, además del permiso para eliminar contenedores.

¿Qué sigue?

Estas son algunas de las acciones que puede realizar a continuación:

  1. Configure el manifiesto de aplicación de SharePoint Embedded para solicitar los permisos necesarios:
    • Microsoft Graph (resourceAppId: 00000003-0000-0000-c000-000000000000)
      • FileStorageContainer.Selected (tipo: Scope, ID: 085ca537-6565-41c2-aca7-db852babc212) para acceder a contenedores en inquilinos de consumo
    • Office 365 SharePoint Online (resourceAppId: 00000003-0000-0ff1-ce00-000000000000)
      • Container.Selected (tipo: Role, ID: 19766c1b-905b-43af-8756-06526ab42875) para registrar un contenedor en inquilinos de consumo
  2. Conceda el consentimiento del administrador a la aplicación en inquilinos propietarios y consumidores (que pueden ser el mismo inquilino).
  3. Cree un nuevo tipo de contenedor en el inquilino propietario.
  4. Registre un tipo de contenedor en el inquilino de consumo.
  5. Creación de un contenedor