Mitglieder eines Shared Channels oder einer Gruppe synchronisieren – geplant
Mitglieder zwischen einem Teams Shared Channel oder einer Gruppe und einer Entra-Sicherheitsgruppe synchronisieren
Dies ist ein geplantes Runbook. Es ist dafür ausgelegt, nach einem wiederkehrenden Zeitplan ausgeführt zu werden, statt für ein einzelnes Objekt ausgelöst zu werden. Siehe Zeitplanung für Details zur Konfiguration von Runbook-Zeitplänen.
Beschreibung
Dieses geplante Runbook spiegelt die Mitgliedschaft eines Quellobjekts in ein Zielobjekt in eine Richtung pro Ausführung. Es unterstützt das Synchronisieren von Mitgliedern eines Teams Shared Channel in eine Security Group, das Synchronisieren der Mitglieder einer Gruppe in eine andere Gruppe (z. B. eine Microsoft 365-Gruppe in eine Security Group oder umgekehrt) sowie das Synchronisieren von Gruppenmitgliedern in einen Teams Shared Channel. Das Hinzufügen fehlender Mitglieder wird immer ausgeführt, während das Entfernen von Mitgliedern, die nur im Ziel vorhanden sind, optional ist und über einen Parameter gesteuert wird. Der Umgang mit Gästen und ob Kanalentfernungen auch die Mitgliedschaft im Host-Team entfernen, ist konfigurierbar, und das Runbook kann optional einen E-Mail-Bericht senden und die Ergebnisse als zeitlich begrenzten Download-Link hochladen. Der Parameter ReportFileFormat steuert, welche Berichtsdateiformate generiert und bereitgestellt werden (nur CSV, CSV & XLSX oder nur XLSX). Wenn der CSV-Anhang die E-Mail-Größenbeschränkung überschreitet und "CSV & XLSX" ausgewählt ist, wechselt die E-Mail auf die Excel-Arbeitsmappe allein.
So funktioniert es
Dieses geplante Runbook spiegelt die Mitgliedschaft eines Quelle Objekt in ein Ziel Objekt in eine Richtung pro Ausführung. Bei jeder Ausführung:
Ermittelt die Quell- und Zielobjekte für die ausgewählte Richtung.
Liest den aktuellen Mitgliedersatz beider Seiten.
Fügt jedes Quellmitglied hinzu, das im Ziel fehlt.
Entfernt optional jedes Zielmitglied, das in der Quelle nicht vorhanden ist (Spiegelmodus).
Richtungen
Das Richtung Parameter legt fest, was womit synchronisiert wird:
SharedChannelToGroup- die Mitglieder eines Teams Shared Channel werden in eine Ziel-Security Group kopiert.GroupToGroup- die Mitglieder einer Quellgruppe werden in eine Zielgruppe kopiert (z. B. eine Microsoft 365-Gruppe in eine Security Group oder umgekehrt durch Vertauschen von Quelle und Ziel).GroupToSharedChannel- die Mitglieder einer Quellgruppe werden in einen Teams Shared Channel kopiert.
Hinzufügen und Entfernen
Das Hinzufügen fehlender Mitglieder wird immer ausgeführt. Das Entfernen von Mitgliedern, die nur im Ziel vorhanden sind, ist optional über RemoveExtraMembers (standardmäßig deaktiviert). Bei aktivierter Entfernung wird das Ziel exakt an der Quelle gespiegelt; bei deaktivierter Entfernung ist das Runbook nur zum Hinzufügen da.
Erweiterung von Gruppenmitgliedern
Gruppenmitglieder auf der Quellseite werden aufgelöst transitiv, sodass Benutzer, die über verschachtelte Gruppen Mitglieder sind, einbezogen werden. Auf der Zielseite werden nur direkte Mitglieder berücksichtigt, da Hinzufüge- und Entfernungsoperationen auf der direkten Mitgliedschaft basieren.
Gastbehandlung
IncludeGuests (standardmäßig deaktiviert) steuert, ob Gastbenutzer an der Synchronisierung teilnehmen. Wenn sie deaktiviert ist, werden Gäste auf beiden Seiten übersprungen und niemals hinzugefügt oder entfernt. Shared Channels lehnen Gäste häufig ab, daher ist dies standardmäßig deaktiviert.
Besonderheiten des Shared Channel
Wenn eine Gruppe synchronisiert wird in einen Shared Channel ist die Teammitgliedschaft eine Voraussetzung für die Kanalmitgliedschaft, daher stellt das Runbook zuerst sicher, dass der Benutzer Mitglied des Host-Teams ist, und fügt ihn dann dem Kanal hinzu.
Wenn Mitglieder entfernt aus einem Shared Channel wird standardmäßig nur die Kanalmitgliedschaft entfernt. Aktivieren Sie
RemoveFromTeamum den Benutzer auch aus der Mitgliedschaft des Host-Teams zu entfernen.
Trockenlauf
Setzen Sie WhatIfMode um zu protokollieren, was sich ändern würde, ohne etwas zu schreiben.
Berichterstellung (optional, beide standardmäßig deaktiviert)
SendEmailReportsendet eine E-Mail im RealmJoin-Branding (überSend-RjReportEmail) mit Laufstatistiken und einem CSV-Anhang, der jede einzelne Änderung auflistet. Der Absender wird aus demRJReport.EmailSenderEinstellung übernommen.CreateDownloadLinklädt dasselbe CSV in ein Storage Account hoch und gibt einen zeitlich begrenzten SAS-Downloadlink zurück (der auch in die E-Mail eingebettet wird, wenn beide Optionen aktiviert sind). Das Ziel-Storage Account wird aus demRJReport.StorageAccount.*Einstellungen übernommen.
Der Storage-Upload authentifiziert sich mit der verwalteten Identität des Automation-Kontos; diese Identität benötigt die Storage Blob Data Contributor RBAC-Rolle auf dem Ziel-Storage Account (dies ist eine Azure-RBAC-Zuweisung, keine Graph-Anwendungsberechtigung).
Zeitplanung
Dafür ausgelegt, nach Zeitplan unbeaufsichtigt zu laufen. Da das Runbook idempotent ist, hält ein einzelner wiederkehrender Zeitplan das Ziel mit der Quelle synchron, während Mitglieder hinzukommen und gehen.
Ort
Organisation → Allgemein → Kanal- oder Gruppenmitglieder synchronisieren (geplant)
Vollständiger Runbook-Name
rjgit-org_general_sync-channel-or-group-members_scheduled
Details
Version
1.1.0
Erforderliche Module
RealmJoin.RunbookHelper (>= 0.8.7) Microsoft.Graph.Authentication (>= 2.39.0) Az.Accounts (>= 5.5.0)
Planbar
ja
Berechtigungen
Anwendungsberechtigungen
Typ: Microsoft Graph
Group.ReadWrite.All
GroupMember.ReadWrite.All
Channel.ReadBasic.All
ChannelMember.ReadWrite.All
TeamMember.ReadWrite.All
User.Read.All
Organization.Read.All
Mail.Send
Parameter
Richtung
Wählt aus, was wohin synchronisiert wird. SharedChannelToGroup kopiert Shared Channel-Mitglieder in die Zielgruppe, GroupToGroup kopiert die Mitglieder der Quellgruppe in die Zielgruppe, und GroupToSharedChannel kopiert die Mitglieder der Quellgruppe in den Shared Channel.
Erforderlich
wahr
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Was synchronisiert werden soll
Portaloptionen
Shared Channel-Mitglieder -> Security Group
Gruppenmitglieder -> Gruppe
Gruppenmitglieder -> Shared Channel
TeamId
Objekt-ID des Teams, das den Shared Channel hostet. Nur für die Shared-Channel-Richtungen verwendet.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Team, das den Shared Channel hostet
ChannelName
Exakter Anzeigename des Shared Channel innerhalb des ausgewählten Teams. Nur für die Shared-Channel-Richtungen verwendet.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Anzeigename des Shared Channel
SourceGroupId
Objekt-ID der Quellgruppe, deren Mitglieder kopiert werden. Verwendet für die Quellgruppen-Richtungen.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Quellgruppe
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
TargetGroupId
Objekt-ID der Ziel-Security Group, die die Mitglieder erhält. Verwendet für die Zielgruppen-Richtungen.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Ziel-Security Group
RemoveExtraMembers
Wenn aktiviert, werden Mitglieder, die nur im Ziel und nicht in der Quelle vorhanden sind, entfernt, sodass das Ziel die Quelle spiegelt. Wenn deaktiviert (Standard), fügt das Runbook nur fehlende Mitglieder hinzu.
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
Nur im Ziel vorhandene Mitglieder entfernen (Quelle spiegeln)
IncludeGuests
Wenn aktiviert, werden Gastbenutzer in die Synchronisierung einbezogen und können hinzugefügt oder entfernt werden. Wenn deaktiviert (Standard), werden Gäste übersprungen und niemals hinzugefügt oder entfernt.
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
Gastbenutzer einbeziehen
RemoveFromTeam
Nur relevant für GroupToSharedChannel. Wenn aktiviert, wird beim Entfernen eines Mitglieds aus dem Shared Channel dieser Benutzer auch aus der Mitgliedschaft des Host-Teams entfernt. Wenn deaktiviert (Standard), wird nur die Kanalmitgliedschaft entfernt.
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
Beim Entfernen aus dem Kanal den Benutzer auch aus dem Host-Team entfernen
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
WhatIfMode
Wenn aktiviert, protokolliert das Runbook nur die Änderungen, die es vornehmen würde, ohne etwas zu schreiben.
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
Trockenlauf (nur Protokoll, keine Änderungen)
SendEmailReport
Wenn aktiviert, wird nach der Ausführung ein E-Mail-Bericht im RealmJoin-Design über Send-RjReportEmail gesendet. Das Aktivieren blendet die Felder für die Empfängeradresse und das Berichtsdateiformat ein.
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
E-Mail-Bericht senden
Portaloptionen
Ja - den Bericht per E-Mail senden
Nein - keine E-Mail senden
EmailTo
Empfänger-E-Mail-Adresse(n) für den Bericht (durch Kommas getrennt). Nur verwendet, wenn SendEmailReport aktiviert ist.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Anzeigename im Portal
Bericht senden an (E-Mail-Adresse(n))
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
EmailFrom
Absenderpostfach für den Bericht. Gebunden an die org-Einstellung RJReport.EmailSender.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
ReportFileFormat
Steuert, welche Berichtsdateiformate generiert und bereitgestellt werden: „nur CSV“, „CSV & XLSX“ (Standard) oder „nur XLSX“.
Erforderlich
falsch
Standardwert
CSV & XLSX
Typ
Zeichenfolge
Anzeigename im Portal
Berichtsdateiformat
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
Portaloptionen
CSV & XLSX
nur CSV
nur XLSX
CreateDownloadLink
Wenn aktiviert, werden die Berichtsdatei(en) in ein Storage Account hochgeladen und zeitlich begrenzte Download-Links zurückgegeben (und im E-Mail-Bericht enthalten, wenn dies ebenfalls aktiviert ist).
Erforderlich
falsch
Standardwert
Falsch
Typ
Boolesch
Anzeigename im Portal
Berichts-Downloadlink erstellen (Bericht in Storage Account hochladen)
Portaloptionen
Ja - Bericht hochladen und einen Download-Link zurückgeben
Nein - keinen Download-Link erstellen
ContainerName
Für den Upload verwendeter Storage-Container. Pro Runbook konfiguriert.
Erforderlich
falsch
Standardwert
channel-group-member-sync
Typ
Zeichenfolge
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
ResourceGroupName
Ressourcengruppe, die das Storage Account enthält. Gebunden an RJReport.StorageAccount.ResourceGroup.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
StorageAccountName
Für den Upload verwendetes Storage Account. Gebunden an RJReport.StorageAccount.StorageAccountName.
Erforderlich
falsch
Standardwert
Typ
Zeichenfolge
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
LinkExpiryDays
Anzahl der Tage, bis der generierte Downloadlink abläuft. Gebunden an RJReport.StorageAccount.LinkExpiryDays.
Erforderlich
falsch
Standardwert
6
Typ
Int32
Im Portal ausgeblendet
ja (vorkonfiguriert über Runbook-Anpassung)
Zuletzt aktualisiert
War das hilfreich?