Microsoft
Outils de productivité Microsoft 365 et provisionnement des utilisateurs Microsoft Entra
Identifiant du fournisseur : microsoft · Maturité : préversion · microsoft.com · docs.microsoft.com · Catégories : productivité, stockage
Outils de productivité Microsoft 365 et provisionnement des utilisateurs de Scrydon vers Microsoft Entra ID.
Authentification
| Identifiant | Remarques |
|---|---|
oauth (Microsoft 365) | Une connexion accorde l'accès à l'API Graph. URL d'autorisation : https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/authorize. La configuration tenantId (GUID, common, organizations ou consumers) est obligatoire. |
Produits
| ID | Nom | Fonction |
|---|---|---|
microsoft:outlook | Outlook | Lire, envoyer et gérer les e-mails. |
microsoft:calendar | Microsoft Calendar | Lister, lire, créer, modifier, supprimer et répondre aux événements de calendrier ; trouver des créneaux de réunion. |
microsoft:excel | Microsoft Excel | Lire et écrire des feuilles de calcul Excel. |
microsoft:teams | Microsoft Teams | Envoyer des messages, gérer les canaux. |
microsoft:onedrive | OneDrive | Gérer les fichiers et dossiers. |
microsoft:sharepoint | SharePoint | Gérer les sites, listes et pages. Un site se désigne par son identifiant, par host:/sites/<nom> ou par n'importe quel lien vers lui — un lien collé vers une bibliothèque ou une page désigne son site. |
microsoft:planner | Microsoft Planner | Gérer les tâches, plans et buckets. |
microsoft:microsoft-discovery | Resource Discovery | Découvrir les ressources (utilisateurs, groupes, sites, boîtes aux lettres) accessibles par le jeton connecté — utilisé par l'assistant en mode système. |
microsoft:entra-provisioning | Provisionnement Entra | Transmettre les utilisateurs faisant autorité et consulter les résultats asynchrones. |
Portées Calendar :
microsoft:calendardemandeCalendars.ReadWrite,Calendars.Read.SharedetCalendars.ReadWrite.Shared. Une connexion Microsoft créée avant l'activation de Calendar ou des ressources partagées ne comporte pas ces portées — reconnectez le compte (un administrateur Entra devra peut-être redonner son consentement) pour éviter les erreurs 403.
Provisionner les utilisateurs de Scrydon vers Entra
Microsoft Entra accepte les charges utiles SCIM en masse via son service de
provisionnement entrant piloté par API. Il n'expose pas de cible SCIM
générique /Users pour les tokens SCIM d'organisation de Scrydon. Ces outils
utilisent un identifiant Microsoft Graph et une tâche de provisionnement Entra
configurée. Consultez la présentation Microsoft.
Configurer un pilote
- Dans Entra, créez l'application de galerie API-driven provisioning to
Microsoft Entra ID et configurez sa tâche de provisionnement. Relevez
l'ID d'objet de l'application d'entreprise (
servicePrincipalId) et l'ID de la tâche. Suivez le guide Microsoft. - Utilisez une connexion Microsoft propre au tenant. Pour les envois sans
utilisateur connecté, accordez l'autorisation d'application
SynchronizationData-User.Upload.OwnedByet la propriété de l'application cible, ouSynchronizationData-User.Uploadsi une autorité plus large est nécessaire. AccordezAuditLog.Read.AlletDirectory.Read.Allpour lire les résultats, puis obtenez le consentement administrateur. Un pilote délégué demandeSynchronizationData-User.Uploadet les autorisations de journal ; l'administrateur connecté doit aussi disposer du rôle Entra requis. - Configurez les correspondances et les mappages d'attributs avant l'envoi.
Gardez un
externalIdstable, par exemplescrydon:<organizationId>:<userId>. Vérifiez la correspondance avec les comptes Entra existants ; l'e-mail seul n'est pas un ancrage durable. Mappezactivevers le comportement d'activation et de désactivation voulu. - Commencez avec un utilisateur jetable. Vérifiez la création, le changement de
nom, le changement d'e-mail avec le même ancrage, la désactivation
(
active: false) et la réactivation (active: true). L'ID d'objet Entra doit rester identique.
Envoyer et vérifier les résultats
Appelez microsoft:entra-provisioning:upload-users avec au plus 50 utilisateurs :
{
"servicePrincipalId": "c5b59c64-9085-4f8c-84ea-16137dab08f8",
"jobId": "API2AAD.your-job-id",
"users": [{
"externalId": "scrydon:your-org-id:your-user-id",
"userName": "pilot@example.com",
"displayName": "Pilot User",
"active": true
}]
}La sortie accepted: true signifie que Graph a renvoyé 202 Accepted ; le
traitement reste en attente. Conservez l'ID de requête et l'heure d'envoi.
Appelez microsoft:entra-provisioning:list-provisioning-logs avec jobId,
l'externalId de l'utilisateur et since (heure d'envoi ISO 8601 UTC). Vérifiez
provisioningStatusInfo, les étapes et l'identité cible pour chaque utilisateur.
Un journal vide ne prouve pas la réussite. Pour la page suivante, transmettez
le $skiptoken de nextLink dans skipToken. Examinez les échecs avant de
renvoyer ; les outils ne réessaient pas automatiquement. Le
contrat d'envoi
et la référence des journaux
Microsoft détaillent les autorisations, les quotas et les résultats asynchrones.
Ces outils transmettent les enregistrements fournis par l'appelant ; ils n'exportent pas automatiquement l'annuaire Scrydon et ne planifient pas de synchronisation continue. Désignez un seul système écrivain par attribut mappé avant de changer l'annuaire faisant autorité. Arrêtez le flux Azure vers Scrydon pour la population pilote avant d'activer le flux inverse. Conservez des enregistrements explicites de désactivation plutôt que d'interpréter une ligne absente de l'export comme une suppression.
Le provisionnement ne modifie pas la connexion Microsoft 365. Le fournisseur OIDC de Scrydon peut servir les applications compatibles, mais la fédération des domaines Microsoft exige un protocole de fournisseur d'identité qualifié séparément et un mappage d'identité immuable. Gardez la connexion Microsoft actuelle jusqu'à la validation de cette bascule.
Boîtes aux lettres et calendriers partagés
Une boîte aux lettres partagée ne se connecte pas à Scrydon. Un utilisateur Microsoft 365 disposant d'une licence se connecte comme compte d'exécution de la connexion ; Exchange lui délègue ensuite l'accès à des boîtes telles que hello@example.com.
Pour un workflow promouvable, configurez une connexion Microsoft exacte par environnement de l'espace de travail :
| Environnement | Compte d'exécution | Ressource de boîte aux lettres |
|---|---|---|
| Développement | Votre compte de développement | hello@example.com |
| Staging | Une identité de staging sous licence | hello@example.com |
| Production | Une identité de production sous licence | hello@example.com |
L'adresse de la boîte reste identique. Les comptes OAuth ainsi que les jetons d'accès et d'actualisation restent propres à chaque environnement et ne sont jamais promus.
Configurer l'accès délégué
- Dans Exchange, accordez au compte d'exécution l'accès total à la boîte partagée. Pour que seule l'adresse partagée soit visible, accordez également Envoyer en tant que. Envoyer de la part de fonctionne, mais les destinataires voient la relation de délégation.
- Pour les calendriers partagés, accordez la délégation de calendrier Exchange requise.
- Dans Entra, accordez les portées Graph déléguées requises, puis reconnectez le compte si la connexion est antérieure à ces portées :
- Outlook :
Mail.Read.Shared,Mail.ReadWrite.Shared,Mail.Send.Shared - Calendar :
Calendars.Read.Shared,Calendars.ReadWrite.Shared
- Outlook :
- Dans Paramètres → Plateforme → Extensions, créez une connexion exacte pour chaque environnement, connectez l'identité sous licence et désignez-la comme compte d'exécution.
- Dans Extensions → Identifiants d’exécution de l'espace de travail, attribuez ce compte d'exécution et ajoutez l'adresse exacte de la boîte. Scrydon effectue une sonde de lecture Graph avant d'enregistrer l'attribution. Microsoft ne fournit pas de liste complète des boîtes partagées déléguées ; la saisie manuelle de l'adresse est donc normale.
- Dans le bloc du workflow, sélectionnez la connexion d'environnement par son nom sous Compte Microsoft, puis choisissez l'adresse attribuée sous Boîte aux lettres. Choisissez Ressource par défaut du compte d'exécution pour utiliser volontairement la boîte ou le calendrier
/medu compte d'exécution.
Sélectionner un compte et une boîte dans le canevas
Les blocs Outlook et Calendar séparent l'identité de la cible :
- Compte Microsoft sélectionne l'identité dont le jeton Microsoft autorise l'appel.
- Boîte aux lettres sélectionne la boîte ou le propriétaire du calendrier ciblé par l'appel.
Avec un compte personnel délégué, choisissez Ma boîte aux lettres pour /me, ou saisissez l'adresse exacte de la boîte partagée dans le champ et choisissez Utiliser <adresse> — l'adresse est enregistrée immédiatement. Microsoft Graph n'énumère pas de manière fiable toutes les boîtes déléguées à un utilisateur ; Scrydon exécute donc ensuite une sonde de lecture Graph avec ce compte en arrière-plan et affiche un avertissement sur le champ si l'accès ne peut pas être vérifié. Avec un compte d'environnement ou applicatif, la liste des boîtes ne contient que les ressources attribuées de manière centralisée à cet identifiant d'espace de travail.
Ces champs proviennent de la déclaration générique des ressources du produit d’extension ; ce ne sont pas des champs de workflow propres à Outlook. Les produits qui déclarent une seule ressource utilisent le même modèle compte/ressource.
Comportement de la promotion
Les blocs enregistrent le produit et la ressource sélectionnée, pas un identifiant de compte Microsoft, et suivent l'identité de l'exécution (voir Exécuter en tant que). La promotion conserve hello@example.com et vérifie uniquement que le produit Microsoft est disponible dans l'environnement cible. Pour ces blocs, elle ne vérifie ni un compte, ni une attribution d'identifiants d'exécution à l'espace de travail, ni l'accès Graph : le compte utilisé dépend de l'identité sous laquelle l'exécution s'effectue, qui n'est connue qu'au démarrage de l'exécution.
Ces vérifications ont lieu à l'exécution, avec l'identité de l'exécution. Une promotion peut donc réussir alors que la première exécution dans l'environnement cible s'arrête sur le bloc Outlook ou Calendrier — par exemple parce que le compte de service « Exécuter en tant que » n'a pas de compte Microsoft sur la connexion de cet environnement, que le compte n'est pas attribué à l'espace de travail cible ou qu'il ne peut pas atteindre la boîte sélectionnée. Avant le déploiement, la vue de promotion affiche un avertissement de disponibilité lorsque l'identité « Exécuter en tant que » n'a pas de compte Microsoft dans l'environnement cible ; elle ne bloque pas le déploiement.
Un bloc qui porte encore une liaison héritée à un compte précis est vérifié strictement : l'espace de travail cible doit avoir ce compte attribué sous Paramètres → Espaces de travail → Identifiants d'exécution, et une boîte liée doit réussir une sonde d'accès Graph. La vue de promotion liste ces blocs. Passez le bloc en « Exécuter en tant que » pour qu'il suive l'identité de l'exécution.
Lorsque la promotion est refusée, la vue de promotion nomme l'espace de travail et l'environnement cibles et, pour un problème d'identifiants, renvoie directement aux identifiants d'exécution de cet espace de travail.
Envoi et éléments envoyés
Pour une boîte sélectionnée, Scrydon envoie via /users/{mailbox}/sendMail et définit l'adresse from sur cette boîte. Avec l'accès total et Envoyer en tant que, les destinataires voient l'adresse partagée. Microsoft indique que ce point de terminaison utilise par défaut le dossier Éléments envoyés de la boîte from ; les administrateurs Exchange peuvent modifier ou dupliquer ce comportement avec les paramètres de copie des éléments envoyés. Voir Envoyer des messages Outlook depuis un autre utilisateur et configurer les éléments envoyés d'une boîte partagée.
L'opération Outlook Transférer l'e-mail accepte un Objet facultatif. Sans objet, Graph transfère directement le message et conserve l'objet existant. Avec un objet personnalisé, Scrydon crée un brouillon de transfert, met à jour son objet, puis l'envoie. Si la mise à jour ou l'envoi échoue, le brouillon reste dans les Brouillons Outlook afin que vous puissiez l'inspecter ou le renvoyer.
Scrydon peut vérifier l'accès en lecture à Mail ou Calendar sans modifier de données. Graph ne fournit pas de sonde sans envoi pour Envoyer en tant que ; le test définitif est un envoi réel. Si Microsoft renvoie ErrorSendAsDenied, accordez Envoyer en tant que ou Envoyer de la part de et confirmez l'accès total.
Mise en forme des messages Teams
Les opérations d'écriture, de réponse et de mise à jour du bloc Teams exposent un champ Format du message :
| Format | Envoyé comme |
|---|---|
Text (par défaut) | Texte brut — corps du message Graph avec contentType: "text". |
HTML | Corps du message Graph avec contentType: "html". |
Adaptive Card | Le champ Message est analysé comme du JSON Adaptive Card et publié en pièce jointe de type carte. |
Avec Adaptive Card, placez le JSON de la carte directement dans le champ Message :
{
"type": "AdaptiveCard",
"version": "1.5",
"body": [
{ "type": "TextBlock", "text": "Notification de déploiement", "weight": "Bolder", "size": "Medium" },
{ "type": "TextBlock", "text": "Build de production terminé avec succès.", "wrap": true }
],
"actions": [
{ "type": "Action.OpenUrl", "title": "Voir les journaux", "url": "https://example.com/logs" }
]
}Scrydon l'encapsule dans la forme exigée par Graph — une pièce jointe application/vnd.microsoft.card.adaptive, référencée par une balise <attachment> dans un corps de message HTML. Choisir Text pour du JSON de carte publie le JSON tel quel : c'est pourquoi une carte laissée au format par défaut apparaît en texte brut dans Teams.
Microsoft Graph ne prend en charge que Action.OpenUrl sur les cartes publiées en tant qu'utilisateur. Action.Submit et Action.ShowCard nécessitent un bot Teams pour recevoir l'appel ; Scrydon rejette donc les cartes qui en contiennent plutôt que de publier une carte dont les boutons resteraient inertes. Voir chatMessageAttachment.
Déclencheurs
Les déclencheurs Outlook de nouvel e-mail sur une boîte partagée utilisent l'interrogation périodique avec le compte d'exécution de l'environnement et la boîte sélectionnée. Ils ne sont pas en temps réel : les autorisations déléguées .Shared ne permettent pas de créer des abonnements de notification Graph sur les dossiers partagés d'un autre utilisateur. Chaque déclencheur conserve son propre curseur. Teams garde son comportement webhook pris en charge. Voir la section Déclencheurs.
Déclencheurs de nouveau fichier (OneDrive et SharePoint)
OneDrive : nouveau fichier et SharePoint : nouveau fichier démarrent une exécution par fichier nouvellement créé dans le lecteur ou la bibliothèque surveillés. La référence complète est Arrivée de fichier ; en bref :
- Notification d'abord, interrogation en filet de sécurité. Scrydon s'abonne aux notifications de changement de Microsoft Graph pour le lecteur et renouvelle l'abonnement automatiquement ; un fichier est donc généralement détecté en quelques secondes. Une interrogation toutes les cinq minutes rattrape ce qu'une notification aurait manqué.
- Nouveaux fichiers uniquement. Les fichiers déjà présents lorsque la surveillance s'arme, les modifications ultérieures, les renommages, les dossiers et les suppressions ne déclenchent rien. Un fichier déplacé dans le dossier surveillé conserve sa date de création d'origine et ne déclenche pas non plus.
- Les réinitialisations du suivi des modifications ne sont pas rejouées. Si Graph invalide le jeton de changement du déclencheur, celui-ci se réarme à partir de ce moment ; les fichiers créés pendant l'invalidité du jeton ne sont pas livrés.
- Une exécution par fichier. Liez le
dedupeKeydu déclencheur à la clé de déduplication d'un bloccreate_process_instancepour obtenir une seule instance de processus par fichier.
Dépannage des ressources partagées
| Symptôme | Résolution |
|---|---|
| Aucune connexion cible | Configurez une connexion Microsoft exacte pour cet environnement. |
| Aucun compte d'exécution | Connectez ou désignez un utilisateur sous licence sur la connexion d'environnement. |
Réautorisation ou portée .Shared absente | Reconnectez le compte d'exécution après avoir accordé les portées Graph déléguées requises. |
| Échec de la sonde de boîte | Vérifiez l'adresse et le locataire, puis accordez l'accès total ou la délégation de calendrier dans Exchange. |
Échec d'envoi avec ErrorSendAsDenied | Accordez Envoyer en tant que ou Envoyer de la part de ; l'accès total est aussi requis pour l'envoi via le point de terminaison de la boîte partagée. |
| Ressource non attribuée | Demandez à un administrateur de l'organisation d'attribuer la boîte à l'identifiant d'exécution de l'espace de travail. |