Microsoft 365 & Google Workspace
Intégration Office 365
Intégration Azure 2-legged pour les utilisateurs, salles et agendas — enregistrement d'application, autorisations, scoping RBAC optionnel et fréquences de synchronisation.
Mis à jour le 4 mai 2026
Intégrations · Authentification · 1.2
L’intégration entre Gfacility et Office 365 fonctionne via une approche 2-legged avec un enregistrement d’application dans Microsoft Entra ID (anciennement Azure Active Directory). L’application Gfacility s’authentifie avec sa propre identité — pas de pop-up ou de consentement séparés pour chaque utilisateur, donc plus stable et plus sécurisé.
1. Créer un enregistrement d’application dans Azure Portal
Créez un enregistrement d’application dédié à Gfacility — indépendant des autres applications, pour un meilleur contrôle et une sécurité accrue.
| Étape | Que faire |
|---|---|
| 1 | Connectez-vous à Azure Portal → App registrations. |
| 2 | Cliquez sur + New registration et saisissez un nom. |
| 3 | Choisissez le type de compte approprié (par ex. Accounts in this organizational directory only). |
| 4 | Redirect URI peut rester vide. |
| 5 | Cliquez sur Register. Notez l'Application (client) ID et le Directory (tenant) ID. |
| 6 | Allez dans Certificates & secrets. |
| 7 | Cliquez sur + New client secret, indiquez une description et une date d'expiration. |
| 8 | Cliquez sur Add. |
2. Attribuer les autorisations API
Dans l’enregistrement d’application, allez dans API permissions → + Add a permission → Microsoft Graph. Ajoutez selon le cas d’usage :
Intégration utilisateurs
Pour la création automatique et la connexion des utilisateurs.
- Application:
User.Read.All - Delegated:
User.Read
Salles / Lieux
Synchronisation automatique des salles de réunion depuis Outlook.
- Application:
Place.Read.All
Outlook Events
Pour la planification, l'analyse et l'affichage des salles.
- Application:
Calendars.Read - Application:
Calendars.ReadWrite
Agendas partagés
Accès aux boîtes aux lettres partagées.
- Delegated:
Calendars.Read.Shared - Delegated:
Calendars.ReadWrite.Shared
Cliquez enfin sur Grant admin consent for [Tenant] — sinon les autorisations restent en attente.
Comment fonctionne l’intégration Places ?
Synchronisation à sens unique d’Outlook vers Gfacility. À chaque modification d’une salle réservable, Gfacility met à jour : Nom, Code, Capacité, Lien vers Outlook Room, Lieu parent. Les lieux parents (Bâtiment, Étage) sont créés automatiquement s’ils n’existent pas encore.
3. Restreindre l’accès via Exchange Online RBAC (optionnel)
Par défaut, les Application permissions ont accès à toutes les boîtes aux lettres et agendas du tenant. Pour le multi-tenant ou une sécurité stricte, vous pouvez restreindre la portée.
Implémentation pas à pas (PowerShell)
A. Établir la connexion et créer le Service Principal — utilisez l’Application ID et l’Object ID de l’Enterprise Application, pas de l’App Registration :
Connect-ExchangeOnline
New-ServicePrincipal `
-AppId "<Application ID>" `
-ObjectId "<Enterprise App Object ID>" `
-DisplayName "Gfacility Application RBAC"
B. Définir un Management Scope — sur un domaine ou un groupe mail-enabled (les groupes de sécurité classiques ne fonctionnent pas) :
# Option 1 : basé sur le domaine (les nouveaux utilisateurs sont automatiquement dans la portée)
New-ManagementScope `
-Name "Gfacility-DomainScope" `
-RecipientRestrictionFilter "PrimarySmtpAddress -like '*@contoso.com'"
# Option 2 : basé sur un groupe mail-enabled (multi-tenant / contrôle complet)
$Group = Get-DistributionGroup "Gfacility Scope"
New-ManagementScope `
-Name "Gfacility-GroupScope" `
-RecipientRestrictionFilter "MemberOfGroup -eq '$($Group.DistinguishedName)'"
C. Attribuer le Role Assignment et tester :
# 1. Attribuer la portée à l'application
New-ManagementRoleAssignment `
-Name "Gfacility-Calendars-Scoped" `
-Role "Application Calendars.Read" `
-App "<Application ID>" `
-CustomResourceScope "Gfacility-DomainScope"
# 2. Vérifier les paramètres
Get-ManagementRoleAssignment -App "<Application ID>" | Format-List Name,Role,CustomResourceScope
# 3. Tester l'accès à une boîte aux lettres spécifique
Test-ServicePrincipalAuthorization -Identity "<Service Principal ID>" -Resource "[email protected]"
Voir aussi le guide Microsoft sur Application RBAC dans Exchange Online.
4. Transmettre les détails à Gfacility
Pour finaliser l’installation, nous avons besoin de :
- Application (client) ID
- Directory (tenant) ID
- Value du client secret
Partagez ces données sensibles via une méthode sécurisée (lien de gestionnaire de mots de passe), jamais directement par e-mail.
Fréquence de synchronisation
Utilisateurs
Une fois par nuit — les nouveaux comptes sont créés automatiquement.
Lieux (Places)
Une fois par nuit — les salles sont mises à jour.
Outlook Events
En temps réel — pour les réservations et les écrans d'affichage.