Provisionnement de blocs-notes et de sites de classe à l’échelle à l’aide des API Microsoft Graph

À mesure que Microsoft améliore sa posture de sécurité sur tous les produits et services, des modifications récentes ont été apportées aux fonctionnalités des API qui peuvent avoir un impact sur les clients qui s’appuyaient précédemment sur des autorisations d’application uniquement pour provisionner des blocs-notes pour la classe à l’aide d’API.

Vous pouvez toujours approvisionner des sites et des notebooks à grande échelle à l’aide des API Microsoft Graph en suivant une autre méthode prise en charge. Cet article décrit les étapes et fournit des liens vers la documentation appropriée.

Présentation

Pour continuer à provisionner des blocs-notes pour la classe et des sites SharePoint à grande échelle :

  1. Utiliser l’API CreateEducationClass lors de la création de sites (un groupe/site par classe)
  2. Pour les sites préexistants, utilisez l’API SharePoint CreatePermission pour accorder des autorisations AppId de bloc-notes OneNote pour la classe à ce site.
  3. Une fois les étapes ci-dessus terminées, les fonctionnalités existantes du bloc-notes pour la classe doivent être restaurées et les appels d’API tels que GetClassNotebooks, AddTeacher et addStudent doivent fonctionner comme prévu.

Instructions pas à pas

1. Créer des sites avec CreateEducationClass

Utilisez l’API CreateEducationClass pour créer un groupe Microsoft 365 et un site SharePoint associé pour chaque classe.

  • Cette API approvisionne le groupe, le site et les ressources associées en un seul appel.
  • Une fois le site créé, vous pouvez utiliser des API existantes pour gérer les notebooks et les autorisations.

Référence : Documentation de l’API CreateEducationClass

2. Accorder des autorisations à des sites existants

Pour les groupes ou sites existants, vous devez accorder explicitement l’accès à l’application Bloc-notes pour la classe à l’aide du modèle d’autorisation Sites.Selected .

Autorisations requises

  • Accès aux applications uniquement à l’aide de Sites.Étendue sélectionnée.
  • Accordez le contrôle total à l’application OneNote EDU sur le site.

Exemple de demande

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 client de l’application cible « displayName » : « EDU OneNote » //Nom d’affichage de l’application cible } }] }

Références :

Créer une API d’autorisation

Développer des applications qui utilisent Sites.Autorisations sélectionnées pour les sites SPO

Blog du développeur Microsoft 365 : Le contrôle de l’accès aux applications sur des collections de sites SharePoint spécifiques est désormais disponible dans Microsoft Graph

3. Utiliser des API existantes pour la gestion des notebooks

Une fois les autorisations correctement configurées, les fonctionnalités existantes du bloc-notes pour la classe, telles que les API suivantes, doivent continuer à fonctionner comme avant :

  • GetClassNotebooks

  • AddTeacher

  • AddStudent

  • CreateClassNotebook

    • Remarque : comme décrit ci-dessus, pour les nouveaux groupes/sites, utilisez CreateEducationClass à la place