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
Registre los permisos de aplicación de tipo contenedor antes de que la aplicación de SharePoint Embedded cree contenedores o acceda al contenido en un inquilino de consumo.
Complete Primero Crear y configurar un tipo de contenedor para que tenga un identificador de tipo de contenedor y una aplicación propietaria.
Por qué se requiere el registro
Una aplicación de SharePoint Embedded no puede interactuar con contenedores en un inquilino de consumo hasta que el tipo de contenedor se registre en ese inquilino.
Controles de registro:
- Qué identificadores de aplicación pueden acceder al tipo de contenedor.
- Qué permisos delegados tiene cada aplicación.
- Qué permisos de solo aplicación tiene cada aplicación.
- Si las aplicaciones invitadas pueden interactuar con los contenedores de la aplicación propietaria.
Si falta el registro o está incompleto, las llamadas posteriores pueden producir errores de acceso denegado.
Descripción de quién puede registrarse
Solo la aplicación propietaria del tipo de contenedor puede invocar la API de registro en el inquilino de consumo.
La aplicación propietaria debe tener:
- Una entidad de servicio instalada en el inquilino de consumo.
- Administración consentimiento para realizar el registro en el inquilino de consumo.
- Permiso
FileStorageContainerTypeReg.Selectedde Microsoft Graph (delegado por el usuario o solo aplicación). - Un token válido para el recurso de Microsoft Graph.
Nota:
La API de registro de tipo de contenedor está disponible en Microsoft Graph v1.0. Cuando la aplicación propietaria llama a la API de registro en nombre de un usuario (delegado), ese usuario debe tener asignado el rol Administrador de SharePoint Embedded o Administrador global . Cuando llama a sin un contexto de usuario (solo aplicación), usa el flujo de concesión de credenciales de cliente.
Concesión del consentimiento del administrador
Pida a un administrador de inquilinos consumidor que conceda consentimiento de administrador a la aplicación propietaria.
Use el punto de conexión de consentimiento del administrador de Plataforma de identidad de Microsoft:
https://login.microsoftonline.com/{consuming-tenant-id}/v2.0/adminconsent?client_id={owning-app-clientid}&scope=https://graph.microsoft.com/.default&redirect_uri={spe-app-redirect-uri}
Configure el correcto y el control de errores para el flujo de incorporación.
Para ver los puntos de conexión de nube nacionales, consulte Plataforma de identidad de Microsoft puntos de conexión en nubes nacionales.
Adquisición de un token para el registro
Use la autenticación delegada o solo de aplicación para el registro.
El registro requiere:
- Permiso
FileStorageContainerTypeReg.Selectedde Microsoft Graph. - Para las llamadas de solo aplicación, el flujo de concesión de credenciales de cliente.
- En el caso de las llamadas delegadas, un usuario que ha iniciado sesión con el rol Administrador incrustado de SharePoint o Administrador global.
Registro de permisos de tipo de contenedor
Llame al punto de conexión de registro en el inquilino de consumo.
PUT https://graph.microsoft.com/v1.0/storage/fileStorage/containerTypeRegistrations/{containerTypeId}
{containerTypeId} es el identificador de tipo de contenedor creado en el inquilino propietario.
En el cuerpo de la solicitud, proporcione las concesiones de permisos de aplicación para el tipo de contenedor.
Concesión de permisos a la aplicación propietaria
Un primer registro común concede a la aplicación propietaria permisos completos para las llamadas delegadas y solo de aplicación.
{
"applicationPermissionGrants": [
{
"appId": "71392b2f-1765-406e-86af-5907d9bdb2ab",
"delegatedPermissions": ["full"],
"applicationPermissions": ["full"]
}
]
}
Reemplace el identificador de aplicación de ejemplo por su identificador de aplicación propietario.
Precaución
Use privilegios mínimos para producción. Conceda full solo cuando la aplicación necesite acceso completo al tipo de contenedor.
Concesión de permisos a una aplicación invitada
La aplicación propietaria también puede registrar permisos para otra aplicación.
Use este patrón cuando una aplicación invitada necesite una carga de trabajo definida, como copia de seguridad o procesamiento.
{
"applicationPermissionGrants": [
{
"appId": "71392b2f-1765-406e-86af-5907d9bdb2ab",
"delegatedPermissions": ["full"],
"applicationPermissions": ["full"]
},
{
"appId": "89ea5c94-7736-4e25-95ad-3fa95f62b6",
"delegatedPermissions": ["read", "write"],
"applicationPermissions": ["none"]
}
]
}
Reemplace ambos identificadores de aplicación por las aplicaciones.
Valores de permiso
| Permiso | Utilice |
|---|---|
None |
No conceda permisos. |
ReadContent |
Lee contenido en contenedores de este tipo. |
WriteContent |
Escribir contenido en contenedores de este tipo. |
Create |
Cree contenedores de este tipo. |
Delete |
Elimine contenedores de este tipo. |
Read |
Lee los metadatos del contenedor. |
Write |
Actualice los metadatos del contenedor. |
EnumeratePermissions |
Enumeración de miembros y roles de contenedor. |
AddPermissions |
Agregar miembros de contenedor. |
UpdatePermissions |
Actualice las pertenencias existentes. |
DeletePermissions |
Elimine otros miembros. |
DeleteOwnPermission |
Quite la pertenencia del autor de la llamada. |
ManagePermissions |
Administrar asignaciones de roles de contenedor. |
ManageContent |
Administre el contenido de los contenedores de este tipo. |
Full |
Conceda todos los permisos. |
Nota:
WriteContentno se puede conceder sinReadContent.
Validación del registro
Un registro correcto devuelve 201 Created y los permisos configurados en el cuerpo de la respuesta.
Después de que el registro se realice correctamente:
- Confirme que la respuesta incluye los identificadores de aplicación esperados.
- Confirme que las matrices delegadas y solo de aplicación coinciden con las concesiones previstas.
- Adquirir un token de Microsoft Graph con permisos de SharePoint Embedded.
- Pruebe una operación de bajo riesgo que coincida con el permiso registrado.
- Continúe con Configuración de autenticación y autorización.
Solución de problemas de consentimiento
| Síntoma | Causa probable | Acción |
|---|---|---|
401 Unauthorized |
Token que falta o no es válido | Solicite un token válido de solo aplicación. |
403 Forbidden |
La aplicación carece de permiso o no es propietaria de la aplicación | Confirme FileStorageContainerTypeReg.Selected, el consentimiento y el identificador de la aplicación. |
404 Not Found |
El tipo de contenedor no existe | Compruebe el identificador y el inquilino. |
| Acceso denegado en llamadas de Graph | Falta el registro o es insuficiente | Vuelva a registrarse con los permisos necesarios. |
| Administración no encuentra permiso oculto | El portal no lo expone | Use una dirección URL de consentimiento del administrador. |
Volver a registrarse de forma segura
No hay ninguna restricción sobre cuántas veces se puede invocar la API de registro.
La última llamada de registro correcta determina la configuración usada en el inquilino de consumo.
Use un proceso de actualización seguro:
- Cree una carga de registro completa.
- Incluya todas las aplicaciones que deben conservar el acceso.
- Envíe la llamada de registro.
- Valide la respuesta.
- Ejecute pruebas de humo para cada rol de aplicación.
Importante
No envíe una carga parcial a menos que tenga previsto que el registro resultante contenga solo ese conjunto de aplicaciones y permisos.
Pasos siguientes
Configure tokens y flujos de autorización en Configuración de autenticación y autorización.