Vue d'ensemble
Plusieurs composants WebPart Vitextra lisent des données qui se trouvent en dehors du site SharePoint : les profils utilisateur et la hiérarchie des responsables dans Microsoft Entra ID, la présence dans Microsoft Teams, les calendriers, les tâches dans Planner et To Do, les fichiers dans OneDrive. Les solutions SharePoint Framework (SPFx) accèdent à ces données par l'intermédiaire de Microsoft Graph, et un administrateur du locataire doit l'autoriser une seule fois.
Le mécanisme est le même pour toutes les solutions SPFx : le package de la solution déclare les autorisations dont il a besoin, SharePoint transforme cette déclaration en demandes d'autorisation lorsque le package est déployé dans le catalogue d'applications, et les demandes attendent sur la page Accès aux API (API access) du Centre d'administration SharePoint jusqu'à ce qu'un administrateur les approuve ou les rejette.
Cet article explique quels produits Vitextra demandent des autorisations et pourquoi, comment approuver les demandes, comment les vérifier et les révoquer par la suite, et ce que vous voyez dans les composants WebPart lorsqu'une autorisation manque. Il s'adresse aux administrateurs SharePoint et aux administrateurs généraux qui installent les produits Vitextra, ainsi qu'aux responsables de la sécurité qui examinent ce type de demandes.
📝 Remarque
L'article ne traite que des demandes d'accès aux API des solutions SPFx. L'installation du package lui-même est décrite dans KB10035. Comment installer un produit Vitextra dans SharePoint Online.
Ce qui est demandé et pourquoi
Toutes les autorisations demandées par les produits Vitextra sont des autorisations déléguées : elles ne fonctionnent que dans le contexte de l'utilisateur connecté et ne donnent jamais à un composant WebPart un accès supérieur à celui dont cet utilisateur dispose déjà dans Microsoft 365. Un composant WebPart qui affiche la liste des collègues montre exactement les personnes et les attributs que l'utilisateur pourrait consulter dans Outlook ou Teams ; un composant WebPart qui affiche des tâches montre les tâches de l'utilisateur qui a ouvert la page.
Le tableau répertorie les autorisations déclarées par les versions actuelles des produits qui utilisent Microsoft Graph.
| Produit | API | Autorisations | Utilisation |
|---|---|---|---|
| Employee Directory | Microsoft Graph | User.Read.All, Directory.Read.All, People.Read, Presence.Read.All, Calendars.Read | Lecture des profils utilisateur, des services et des responsables ; personnes pertinentes ; présence Teams ; état de disponibilité (libre/occupé) pour l'indicateur de disponibilité |
| Employee Details | Microsoft Graph | User.Read.All, User.ReadWrite, People.Read.All, Presence.Read.All, Files.Read.All, Sites.Read.All, Calendars.Read.Shared | Lecture des profils ; possibilité pour un utilisateur de modifier les champs de son propre profil ; personnes pertinentes ; présence ; documents et sites sur lesquels la personne a récemment travaillé (insights Microsoft Graph) ; état de disponibilité des collègues pour les heures de travail et la disponibilité |
| Organizational Chart | Microsoft Graph | User.Read.All, Directory.Read.All, Presence.Read.All | Construction de la hiérarchie à partir de l'attribut Responsable ; service et fonction ; présence Teams |
| Absence & Coverage | Microsoft Graph | User.Read.All | Résolution des employés, de leurs responsables et de leurs subordonnés directs pour les demandes, les approbations et les remplacements |
| My Tasks | Microsoft Graph | User.Read, User.ReadBasic.All, Tasks.ReadWrite | Tâches de Planner, de To Do et e-mails marqués d'un indicateur ; noms des auteurs des tâches |
| My Tasks | Azure DevOps | user_impersonation | La source Azure DevOps et le composant WebPart Azure DevOps Query |
| Password Vault | Microsoft Graph | Files.ReadWrite.AppFolder | Stockage du coffre chiffré dans le dossier d'application du OneDrive de l'utilisateur |
Les produits qui ne travaillent qu'avec le site actuel — Announcements Carousel, List Filter Online, QR Code Generator, Questions & Answers, Quick Poll, RSS Reader, Smart Search et Smart Tiles — ne demandent aucune autorisation d'API. Rien n'apparaît pour eux sur la page Accès aux API.
📝 Remarque
Un nom d'autorisation tel que Tasks.ReadWrite ou User.ReadWrite est le nom de l'étendue Microsoft Graph, qui peut être plus large que ce que le produit en fait réellement. My Tasks ne fait que lire les tâches ; Employee Details n'écrit que les champs de profil de l'utilisateur connecté. Les articles propres à chaque produit détaillent chaque autorisation : KB10235. Autorisations Microsoft Graph requises par Organizational Chart, KB10303. My Tasks : autorisations requises, confidentialité et sécurité.
D'où viennent les demandes
Une demande d'autorisation est créée lorsque le package .sppkg est déployé dans le catalogue d'applications du locataire. Les demandes appartiennent au package, et non aux composants WebPart individuels ; une solution qui contient deux composants WebPart présente donc un seul ensemble de demandes, et une autorisation nécessaire uniquement à une fonctionnalité facultative (la source Azure DevOps de My Tasks, par exemple) est demandée avec les autres.
Deux points sont importants pour la gouvernance :
- L'approbation vaut pour l'ensemble du locataire. SharePoint accorde l'autorisation à une seule application Microsoft Entra ID qu'il utilise pour toutes les solutions SPFx — SharePoint Online Web Client Extensibility (anciennement SharePoint Online Client Extensibility Web Application Principal). Une fois User.Read.All approuvée pour Employee Directory, la même autorisation est utilisée par Organizational Chart et par toute autre solution SPFx du locataire qui la demande. C'est ainsi que fonctionne SharePoint Framework ; il ne s'agit pas d'un choix de conception de Vitextra.
- Le déploiement ne dépend pas de l'approbation. Un produit Vitextra peut être déployé, ajouté aux sites et placé sur des pages pendant que ses demandes sont encore en attente, voire rejetées. Seules les fonctionnalités qui dépendent de l'autorisation manquante ne fonctionnent pas.
Prérequis
- Le package Vitextra est chargé dans le catalogue d'applications du locataire et déployé (Activer l'application).
- Vous êtes connecté avec un compte qui dispose du rôle Administrateur SharePoint ou Administrateur général. Les administrateurs de collection de sites et les propriétaires du catalogue d'applications ne peuvent pas approuver l'accès aux API.
❗ Important
La page Accès aux API affiche les demandes des packages déployés dans le catalogue d'applications du locataire. Si vous préférez déployer les produits Vitextra depuis un catalogue d'applications de collection de sites, déployez d'abord le package dans le catalogue d'applications du locataire et approuvez-y les demandes ; les autorisations approuvées valent pour l'ensemble du locataire et sont alors également disponibles pour la copie placée dans le catalogue d'applications de la collection de sites.
Approuver les demandes
1. Ouvrez le Centre d'administration Microsoft 365 et accédez au Centre d'administration SharePoint.
2. Dans le volet de navigation de gauche, développez Avancé et sélectionnez Accès aux API.
3. Dans l'onglet Demandes en attente, recherchez les demandes du package Vitextra. Chaque ligne indique le nom du package (par exemple Vitextra Employee Directory), l'API (Microsoft Graph ou Azure DevOps) et l'autorisation.
4. Sélectionnez une demande et cliquez sur Approuver. Lisez la description dans le volet et confirmez avec Approuver.
5. Répétez l'opération pour chaque demande du package. Une autorisation déjà approuvée pour une autre solution n'apparaît pas une seconde fois : SharePoint réutilise l'autorisation existante.
6. Passez à l'onglet Demandes approuvées et vérifiez que toutes les autorisations du package y figurent.
Les utilisateurs ne voient aucune invite de consentement : après l'approbation, les composants WebPart fonctionnent pour tout le monde dans le locataire. L'autorisation prend généralement effet en quelques minutes ; si un composant WebPart signale toujours une autorisation manquante, rechargez la page ou déconnectez-vous puis reconnectez-vous pour obtenir un nouveau jeton.
💡 Astuce
Vous pouvez approuver les demandes en une seule fois avec SharePoint Online Management Shell : Get-SPOTenantServicePrincipalPermissionRequests répertorie les demandes en attente, et Approve-SPOTenantServicePrincipalPermissionRequest -RequestId <id> en approuve une. C'est pratique lorsque vous déployez plusieurs produits Vitextra en même temps.
Approuver seulement une partie des autorisations
Vous pouvez approuver certaines demandes et en rejeter d'autres. Le composant WebPart continue de fonctionner, et seule la fonctionnalité dépendante est concernée :
- Presence.Read.All rejetée — Employee Directory, Employee Details et Organizational Chart affichent les personnes sans l'indicateur de présence Teams.
- Calendars.Read / Calendars.Read.Shared rejetées — les informations de disponibilité et d'heures de travail ne sont pas affichées.
- Files.Read.All / Sites.Read.All rejetées — Employee Details n'affiche pas les fichiers et les sites récents.
- user_impersonation (Azure DevOps) rejetée — la source Azure DevOps de My Tasks et le composant WebPart Azure DevOps Query ne peuvent pas se connecter à Azure DevOps.
Le rejet de l'autorisation principale d'un produit (User.Read.All pour les produits centrés sur les personnes, Tasks.ReadWrite pour My Tasks, Files.ReadWrite.AppFolder pour Password Vault) laisse le composant WebPart sans données.
Ce que voient les utilisateurs lorsqu'une autorisation manque
| Symptôme | Cause probable |
|---|---|
| Le composant WebPart affiche une erreur indiquant un accès refusé, des privilèges insuffisants ou un consentement manquant | L'autorisation principale est en attente ou rejetée |
| Les employés sont affichés, mais le point de présence coloré manque | Presence.Read.All n'est pas approuvée |
| L'organigramme est vide ou n'affiche que l'utilisateur actuel | User.Read.All ou Directory.Read.All n'est pas approuvée |
| My Tasks n'affiche rien pour Planner, To Do et Outlook, alors que la source SharePoint fonctionne | Tasks.ReadWrite n'est pas approuvée |
| Tout fonctionnait, et après une mise à jour une fonctionnalité a cessé de fonctionner | La nouvelle version demande une autorisation supplémentaire qui est encore en attente |
Ouvrez la page Accès aux API et comparez les onglets Demandes en attente et Demandes approuvées avec le tableau figurant au début de cet article.
Mises à jour et nouvelles autorisations
Lorsque vous chargez une nouvelle version d'un package (voir KB10050. Comment mettre à jour une solution Vitextra SPFx dans SharePoint Online), les autorisations approuvées précédemment restent approuvées. Si la nouvelle version déclare une autorisation que la version précédente ne déclarait pas, la nouvelle demande apparaît dans l'onglet Demandes en attente et doit être approuvée de la même manière. Vitextra indique ces changements dans les notes de publication du produit.
Vérifier et révoquer les autorisations
Comme les autorisations sont partagées par toutes les solutions SPFx, la suppression d'un produit Vitextra ne révoque pas les autorisations qu'il a demandées. Pour révoquer une autorisation :
- Ouvrez Accès aux API et passez à l'onglet Demandes approuvées.
- Sélectionnez l'autorisation et cliquez sur Supprimer.
- Confirmez.
❗ Important
Avant de supprimer une autorisation, vérifiez si une autre solution du locataire en dépend — vos propres composants WebPart SPFx, les produits d'autres éditeurs et les autorisations préautorisées de Microsoft apparaissent dans le même onglet. La suppression d'une autorisation utilisée par une autre solution interrompt immédiatement cette solution.
Une demande rejetée peut être approuvée ultérieurement : les demandes rejetées restent dans l'onglet Demandes en attente jusqu'à ce que le package soit supprimé du catalogue d'applications. Si une demande a disparu, un nouveau déploiement du package dans le catalogue d'applications la recrée.
Notes de sécurité pour les réviseurs
- Chaque appel à Microsoft Graph est effectué depuis le navigateur de l'utilisateur connecté avec un jeton émis pour cet utilisateur. Les composants WebPart Vitextra n'ont aucune autorisation d'application (app-only) et aucun compte de service.
- Microsoft Graph applique les autorisations propres à l'utilisateur en plus de l'étendue déléguée : un utilisateur masqué dans le carnet d'adresses, ou un locataire qui restreint l'API People, est pris en compte dans les composants WebPart de la même manière que dans Outlook.
- Aucune donnée d'annuaire, aucune donnée de tâche et aucun fichier ne sont envoyés à Vitextra. Les seules requêtes vers les services Vitextra sont la vérification de la licence et la télémétrie d'utilisation avec des identifiants techniques ; voir KB10363. Où les produits Vitextra stockent vos données : confidentialité, résidence des données et RGPD.