Aprovisionamiento de blocs de notas y sitios de clase a escala mediante las API de Microsoft Graph

A medida que Microsoft mejora su posición de seguridad en todos los productos y servicios, ha habido cambios recientes en la funcionalidad de la API que pueden afectar a los clientes que anteriormente dependían de permisos solo de aplicación para aprovisionar Blocs de notas de clase mediante API.

Todavía puede aprovisionar sitios y blocs de notas a escala mediante las API de Microsoft Graph siguiendo un método alternativo admitido. En este artículo se describen los pasos y se proporcionan vínculos a la documentación pertinente.

Información general

Para continuar aprovisionando blocs de notas de clase y sitios de SharePoint a escala:

  1. Usar la API CreateEducationClass al crear nuevos sitios (un grupo/sitio por clase)
  2. En el caso de sitios preexistentes, use la API CreatePermission de SharePoint para conceder permisos AppId de Bloc de notas de clase de OneNote a ese sitio.
  3. Una vez completados los pasos anteriores, se debe restaurar la funcionalidad existente del bloc de notas de clase y las llamadas API, como GetClassNotebooks, AddTeacher y addStudent , deben funcionar según lo previsto.

Instrucciones paso a paso

1. Crear nuevos sitios con CreateEducationClass

Use la API CreateEducationClass para crear un nuevo grupo de Microsoft 365 y un sitio de SharePoint asociado para cada clase.

  • Esta API aprovisiona el grupo, el sitio y los recursos asociados en una llamada.
  • Una vez creado el sitio, puede usar las API existentes para administrar los cuadernos y los permisos.

Referencia: Documentación de API de CreateEducationClass

2. Conceder permisos a los sitios existentes

Para los Grupos o sitios existentes, debe conceder explícitamente acceso a la aplicación Bloc de notas de clase mediante el modelo de permisos Sites.Selected .

Permisos necesarios

  • Acceso de solo aplicación mediante el ámbito Sites.Selected.
  • Conceda a la aplicación educativa OneNote control total del sitio.

Solicitud de muestra

POST https://graph.microsoft.com/v1.0/sites/{sitesId}/permissions Content-Type: application/json { "roles": ["fullcontrol"], "grantedToIdentities": [{ "application": { "id": "13291f5a-59ac-4c59-b0fa-d1632e8f3292", //Id. de cliente de la aplicación de destino "displayName": "EDU OneNote" //Nombre para mostrar de la aplicación de destino } }] }

Referencias:

Crear API de permisos

Desarrollar aplicaciones que usen sitios. Permisos seleccionados para sitios de SPO

Blog para desarrolladores de Microsoft 365: El control del acceso a aplicaciones en colecciones de sitios específicos de SharePoint ya está disponible en Microsoft Graph

3. Usar las API existentes para la administración de cuadernos

Una vez que los permisos están configurados correctamente, la funcionalidad existente del bloc de notas de clase, como las siguientes API, debería seguir funcionando como antes:

  • GetClassNotebooks

  • AddTeacher

  • AddStudent

  • CreateClassNotebook

    • Nota: como se ha descrito anteriormente, para nuevos grupos/sitios, use CreateEducationClass en su lugar