Le contrôle d’accès Microsoft Teams d’OpenClaw
Les écritures de configuration, la règle du compte unique, l’appairage des messages privés avec des identifiants d’objet stables, la politique de groupe et les listes de groupe avec identifiants de conversation, les listes d’équipes et de canaux, pourquoi le paramètre groupId n’est pas l’identifiant d’équipe, et les limites des canaux privés
Le contrôle d’accès Teams est court en options et long en identifiants : un compte, quatre politiques de messages privés, une politique de groupe, et des listes qui doivent contenir la bonne sorte d’identifiant. La partie identifiants est celle où les installations se trompent, parce que la valeur évidente dans une URL Teams est la mauvaise. Voici les politiques, les listes, le piège de l’URL, et ce que les canaux privés ne peuvent pas faire.
Messages privés et groupes
- Teams peut écrire par défaut les mises à jour de configuration déclenchées par les commandes de réglage et de retrait de configuration, ce qui exige l’activation de la commande de configuration, et la clé d’écritures de configuration réglée sur faux les désactive ; le canal a un compte par configuration, donc les politiques se placent directement sous le bloc du canal et une carte de comptes n’est pas prise en charge.
- La politique de messages privés vaut appairage par défaut, les expéditeurs inconnus étant ignorés jusqu’à approbation, la liste des messages privés doit utiliser des identifiants d’objet AAD stables ou des groupes d’accès statiques d’expéditeurs, la correspondance par UPN ou nom d’affichage n’est pas fiable parce que les deux peuvent changer et la correspondance directe par nom est désactivée par défaut derrière l’interrupteur dangereux, et l’assistant peut résoudre les noms en identifiants par Graph quand les identifiants le permettent.
- La politique de groupe vaut liste par défaut, bloquée jusqu’à l’ajout d’une liste de groupe, doit être réglée explicitement pour choisir une autre politique parce que la valeur par défaut du schéma racine l’emporte sur les valeurs par défaut des canaux, et prend ouvert pour autoriser tout membre, toujours soumis à la mention, ou désactivé pour bloquer tous les canaux ; la liste de groupe contrôle quels expéditeurs, groupes d’accès statiques ou identifiants de conversation de groupe et de canal peuvent déclencher en discussion de groupe et en canal, retombe sur la liste des messages privés, accepte les trois formes d’identifiant de fil avec la casse exacte conservée, ignore les suffixes d’identifiant de message, et n’accorde jamais l’accès aux messages privés personnels.
- Les listes d’équipes et de canaux limitent les réponses en listant les équipes et les canaux sous la carte des équipes indexée par des identifiants de conversation stables tirés des liens Teams plutôt que par des noms d’affichage ; avec une politique en liste et une liste d’équipes présente, seuls les équipes et canaux listés sont acceptés, soumis à la mention, la liste de groupe autorise des expéditeurs et non des lectures Graph déléguées d’autres canaux, une configuration qui ne règle que la liste de groupe doit garder la politique en liste et ajouter la cible sous les canaux de l’équipe, une politique ouverte autorise des lectures déléguées plus larges mais admet tout expéditeur de groupe, les lectures d’opérateur direct et les lectures de la conversation courante n’exigent aucune route supplémentaire, l’assistant stocke les entrées d’équipes et de canaux, et au démarrage les noms sont résolus en identifiants et journalisés, les noms non résolus étant conservés mais ignorés pour le routage sauf si l’interrupteur dangereux est activé.
Les identifiants de conversation n’accordent jamais l’accès aux messages privés personnels.
Le piège de l’URL
Le paramètre de requête groupId des URL Teams n’est pas l’identifiant d’équipe utilisé pour la configuration. Les identifiants viennent du chemin de l’URL : pour une URL d’équipe, le segment après le composant de chemin d’équipe, décodé en forme de fil, et pour une URL de canal, le segment après le composant de chemin de canal, décodé de même. La clé d’équipe est ce segment d’équipe décodé, que les anciens locataires peuvent afficher avec un suffixe de fil skype également valide, la clé de canal est le segment de canal décodé, et le paramètre groupId est ignoré pour le routage parce qu’il est l’identifiant de groupe Microsoft Entra et non l’identifiant de conversation du Bot Framework que portent les activités Teams entrantes.
Canaux privés
- Les bots ont une prise en charge limitée dans les canaux privés : l’installation est limitée, les messages en temps réel par webhook peuvent ne pas fonctionner, les permissions propres aux ressources peuvent se comporter différemment, les mentions ne fonctionnent que si le bot est accessible, et l’historique Graph fonctionne avec les bonnes permissions, tandis que les canaux standard prennent tout en charge.
- Les deux premiers contournements sont d’utiliser des canaux standard pour les interactions avec le bot et d’utiliser les messages privés, puisque les utilisateurs peuvent toujours écrire directement au bot.
- Le troisième est l’historique Graph pour l’accès historique, qui exige la permission de lecture de tous les messages de canal et le consentement administrateur.
OpenClaw sur Microsoft Teams est le billet du canal auquel ces règles appartiennent, et Le comportement des messages Microsoft Teams dans OpenClaw l’endroit où un message admis est routé et mis en fil.
Trois sortes d’identifiants
Un identifiant d’objet Entra identifie une personne, un identifiant de conversation en forme de fil identifie une équipe ou un canal, et un identifiant de groupe Entra n’identifie ni l’un ni l’autre pour le routage, et c’est pourquoi la documentation consacre une section au segment d’URL à copier. Les groupes d’accès dans OpenClaw explique les groupes d’accès que les listes peuvent référencer, et Le contrôle d’accès Slack d’OpenClaw les règles équivalentes sur Slack, où les clés de canal doivent être des identifiants pour la même raison.
Sur Diali
Microsoft Teams ne fait pas partie des canaux que Diali connecte aujourd’hui : WhatsApp, Telegram, Discord, Slack, Mattermost, Matrix, SMS et voix. OpenClaw hébergé sur Diali est l’assistant, et Connecter votre premier canal en cinq minutes montre les canaux que vous pouvez connecter en cinq minutes.
- Un compte ; des identifiants d’objet pour les personnes, des identifiants de fil pour les canaux.
- Le paramètre groupId n’est jamais l’identifiant d’équipe.
- Les canaux privés peuvent ne pas livrer les webhooks ; utilisez les canaux standard ou les messages privés.
Arrêtez de lire, construisez le vôtre
Configurez un agent, choisissez un canal, et faites-le travailler dans l’application que vous gardez déjà ouverte.
