SharePoint Toolbox — Wiki

Application WPF (.NET 10) pour administrer, auditer et exporter des donnees depuis un tenant SharePoint Online.

.NET 10 WPF MVVM MSAL Graph PnP.Framework EN / FR

Apercu

SharePoint Toolbox centralise les taches recurrentes d'un administrateur SharePoint Online : audit des permissions, mesure du stockage, annuaire des utilisateurs, recherche de fichiers et detection de doublons. Tous les rapports peuvent etre exportes en CSV ou en HTML interactif avec un branding configurable.

Installation

  1. Telecharger le dernier zip depuis la page Releases.
  2. Extraire l'archive dans un dossier de votre choix.
  3. Lancer SharepointToolbox.exe.

Prerequis

  • Windows 10 ou superieur
  • Runtime .NET 10 Desktop
  • Une Azure AD App Registration (Client ID) avec les permissions deleguees
  • Des identifiants ayant acces au tenant SharePoint cible

Connexion & profils

  • Saisir le Tenant URL et le Client ID.
  • Enregistrer des profils reutilisables (creation, renommage, suppression, rechargement).
  • Parcourir le tenant et cocher plusieurs sites depuis le selecteur.
  • Enregistrement Azure AD automatique ou guide depuis le profil.
  • Branding multi-tenant avec logos client dans les exports.

Rapport de permissions

Audit complet des permissions sur un ou plusieurs sites.

  • Scan des bibliotheques, listes et dossiers avec profondeur configurable.
  • Inclusion optionnelle des permissions heritees et des sous-sites.
  • Mode consolidation : fusion des permissions identiques avec liste des sites/bibliotheques concernes.
  • Export en CSV ou en HTML (rapport interactif avec filtrage, tri et regroupement par utilisateur/site).

Metriques de stockage

Analyse de l'occupation du stockage SharePoint.

  • Repartition par bibliotheque avec profondeur de dossiers configurable.
  • Metriques : taille totale, taille des versions, nombre d'elements, derniere modification.
  • Visualisation 3D interactive du stockage.
  • Export en CSV ou en HTML (rapport avec graphiques de repartition).

Annuaire utilisateurs

  • Liste complete des utilisateurs du tenant via Microsoft Graph.
  • Filtrage et recherche textuelle.
  • Export en HTML.

Recherche de fichiers

Recherche avancee de fichiers a travers les bibliotheques d'un site, utilisant la Search API SharePoint (KQL) avec pagination automatique.

FiltreDescription
Extension(s)ex. docx pdf xlsx
Nom / RegexExpression reguliere sur le chemin du fichier
Cree apres / avantPlage de dates de creation
Modifie apres / avantPlage de dates de modification
Cree parNom ou email de l'auteur
Modifie parNom ou email du dernier editeur
BibliothequeLimite la recherche a un chemin relatif

Doublons

Detection de fichiers ou dossiers en double au sein d'un ou plusieurs sites.

  • Type de scan : Fichiers (Search API) ou Dossiers (enumeration CAML).
  • Criteres de comparaison (combinables) : Nom, Taille, Date de creation, Date de modification, Nombre de sous-dossiers, Nombre de fichiers.
  • Export en CSV ou en HTML (cartes depliables avec mise en evidence des valeurs identiques/differentes).

Architecture

  • Interface WPF avec pattern MVVM (generateurs CommunityToolkit.Mvvm).
  • Injection de dependances via Microsoft.Extensions.Hosting.
  • Authentification MSAL avec cache persistant et support broker WAM.
  • Microsoft Graph SDK pour les operations tenant/utilisateurs.
  • PnP.Framework (CSOM) pour les operations SharePoint.
  • Localisation complete EN/FR via fichiers .resx.
  • Branding configurable (logos MSP et client) dans les exports HTML.
  • Journalisation structuree via Serilog (sink fichier).

Dependances

PaquetVersionRole
CommunityToolkit.Mvvm8.4.2Generateurs MVVM
CsvHelper33.1.0Lecture/ecriture CSV
LiveChartsCore.SkiaSharpView.WPF2.0.0-rc5.4Graphiques / visualisation 3D
Microsoft.Extensions.Hosting10.0.0Host generique & DI
Microsoft.Graph5.74.0SDK Graph (tenant/utilisateurs)
Microsoft.Identity.Client4.83.3Authentification MSAL
Microsoft.Identity.Client.Broker4.82.1Support broker WAM
Microsoft.Identity.Client.Extensions.Msal4.83.3Cache de tokens persistant
PnP.Framework1.18.0Operations SharePoint CSOM
Serilog4.3.1Journalisation structuree
Serilog.Extensions.Hosting10.0.0Integration host
Serilog.Sinks.File7.0.0Sink fichier

Configuration Azure AD

L'application peut enregistrer l'app Azure AD automatiquement, ou vous pouvez la creer manuellement avec les permissions deleguees suivantes :

  • Sites.FullControl.All (SharePoint)
  • User.Read.All (Microsoft Graph)
  • Directory.Read.All (Microsoft Graph)

L'URI de redirection doit etre definie sur la valeur par defaut MSAL public client (http://localhost) pour la connexion interactive.

Depannage

  • Boucle de connexion / erreurs AADSTS : verifier le Client ID, le tenant URL et le consentement administrateur.
  • Recherche vide : l'indexation SharePoint Search peut prendre du temps ; reessayer plus tard.
  • Timeouts de scan de permissions : reduire la profondeur de dossiers ou scanner moins de sites a la fois.
  • Logs : ecrits par Serilog dans le dossier local de l'application — les joindre en cas de probleme.