Runbook-Berechtigungen

Wie man Zugriff auf bestimmte Runbooks gewährt/verweigert.

Umfang

Dies beschreibt, wie Zugriff auf bestimmte Runbooks in einem Azure-Mandanten gewährt/verweigert wird. Wenn Sie Antworten zu den Microsoft Graph API-Berechtigungen suchen, die benötigt werden, um eine bestimmte Aktion als Runbook auszuführen, werfen Sie bitte einen Blick auf unsere Anforderungen.

Übersicht

"Runbook-Berechtigungen" definieren die Sichtbarkeit von Runbooks für bestimmte Benutzer. Bestimmte Runbooks können auch global blockiert/ausgeblendet werden.

Wie die Runbook-Anpassungen, werden diese Berechtigungen festgelegt, indem ein JSON-formatiertes Konfigurationsdokument als RealmJoin-Administrator im RealmJoin-Webportal unter https://portal.realmjoin.com/settings/runbooks-permissionsarrow-up-right .

Über diese Anleitung

Wir geben eine kurze Beschreibung der Syntax und bauen dann ein vollständiges Beispiel Stück für Stück auf. Sie können auch direkt zum vollständigen Beispiel springen und von dort.

Konfigurationssyntax

Runbook-Namen

Runbooks werden durch ihre Namen referenziert, wie sie im Azure Automation-Konto zu sehen sind, z. B. rjgit-group_general_remove-group.

Platzhalter ('*') können verwendet werden, um mehrere Runbooks zu matchen. Mehrere Platzhalter können im gleichen String verwendet werden, z. B. rjgit-*_security_*. Dies würde all die folgenden Beispiele abdecken:

  • rjgit-org_security_list-inactive-users

  • rjgit-device_security_enable-or-disable-device

Das Präfix rjgit- kennzeichnet Runbooks, die aus unserem öffentlichen GitHub-Repository importiert wurden. Kundenspezifische Runbooks haben kein Präfix, z. B. user_userinfo_custom-runbook

Entra ID-Gruppen

Entra ID-Gruppen werden anhand ihrer Objekt-ID referenziert, wie 91688d11-9a34-42cd-8d1e-ce617d6c1234. Derzeit können nur Sicherheitsgruppen verwendet werden.

JSON-Struktur und Beispiel

Wir bauen ein vollständiges Konfigurationsbeispiel Stück für Stück auf.

Eine JSON-Konfiguration besteht aus mehreren Abschnitten, aber alle Abschnitte sind optional und können weggelassen werden.

Es ist erlaubt, Kommentare mit dem Präfix "//" hinzuzufügen.

EnabledRunbookPatterns

Dieser Abschnitt enthält eine Liste von Runbooks, deren Verwendung erlaubt ist. Wenn dieser Abschnitt weggelassen wird, sind standardmäßig alle Runbooks aktiviert/erlaubt.

Wenn Sie diesen Abschnitt definieren, sind nur Runbooks, die in diesem Abschnitt erwähnt werden, für jede Rolle / Support und Administratoren verwendbar.

Beispiel

  • Erlauben Sie nur bestimmte, einzelne Runbooks, indem Sie deren vollständigen Namen angeben

    rjgit-group_general_remove-group

  • Erlauben Sie alle gerätebezogenen Runbooks aus unserem gemeinsamen Repository

    rjgit-device_*

  • Erlauben Sie alle gemeinsamen Benutzer-Runbooks

    rjgit-user_*

  • Erlauben Sie alle kundenspezifischen (lokalen), benutzerbezogenen Runbooks

    user_*

Dies schließt implizit viele gruppen- und alle organisationsbasierten Runbooks aus. Beachten Sie das.

DisabledRunbookPatterns

Eine Liste von Runbooks, die global deaktiviert/ verboten sind. Wenn dieser Abschnitt weggelassen oder leer ist, sind alle aktivierten Runbooks (angegeben via EnabledRunbookPatterns) verwendbar.

Einträge in diesem Abschnitt haben Vorrang vor Einträgen in EnabledRunbookPatterns - die Runbooks werden für niemanden in diesem Mandanten sichtbar/nutzbar sein.

Beispiel

Wir werden den EnabledRunbookPatterns Abschnitt von vorher wiederverwenden.

  • Deaktivieren Sie alle gemeinsamen (rjgit-) Runbooks in der Sicherheits- Kategorie.

Rollen

In diesem Abschnitt können Sie einer Entra ID-Gruppe eine Liste von Runbooks zuweisen. Dies ermöglicht die Definition mehrerer Support-/Operator-Rollen in Ihrem Mandanten.

Wenn dieser Abschnitt weggelassen wird, haben alle RealmJoin-Support- und Administratoren Zugriff auf alle in den vorherigen Abschnitten angegebenen Runbooks.

circle-exclamation

Beispiel

Weiter mit dem, was wir haben, erstellen wir eine Geräte-Support-Rolle DeviceAdmin und eine Benutzer-Support-Rolle UserAdmin.

Wir werden diese Rollen mehreren Entra ID-Gruppen zuweisen und für jede Rolle eine Liste erlaubter Runbooks angeben. Seien Sie sich bewusst – dies wird die Benutzer-Support-Rolle auf nur eine kleine Menge von Runbooks beschränken.

Fügen wir Kommentare ("//") neben der Objekt-ID der Gruppe hinzu, die dem Leser helfen, indem sie die Entra ID-Gruppennamen angeben.

Nun kann die UserAdmin Rolle:

  • Lizenzen allen Benutzern in Ihrem Mandanten zuweisen

  • E-Mail-Adressen aller Benutzer in Ihrem Mandanten ändern

Der DeviceAdmin Rolle kann

  • jedes Gerät in Ihrem Mandanten löschen

TargetEntityGroups

Vielleicht haben Sie einige entscheidende VIP-Benutzer. Es sollte nicht möglich sein, dass beliebiges Supportpersonal das Gerät eines VIP löscht oder die E-Mail-Adresse eines VIP ändert. Wir können "Targeting" verwenden, um Rollen für kritische Benutzer auf dedizierte Teams einzuschränken.

"Geräte" werden über ihren primären/zugewiesenen Benutzer gezielt, nicht über das Geräteobjekt in Entra ID. Dies erlaubt es, bei einem rein benutzerbasierten Gruppenmodell zu bleiben.

Wir gehen davon aus, dass Entra ID-Gruppen existieren, die kritische VIP-Benutzer enthalten. Mit diesem Abschnitt können wir einige kritischere Rollen und Runbooks gezielt für diese speziellen Entra ID-Gruppen (Ziele) einschränken.

Offensichtlich, wenn Sie diesen Abschnitt weglassen, werden alle Benutzer/Gruppen/Geräte in Ihrem Mandanten gleich behandelt.

Wenn Sie TargetEntityGroups definieren, sollte dies keinen Einfluss auf andere, in dem Abschnitt nicht erwähnte Gruppen haben.

Vollständiges Beispiel

Angenommen Gruppe 0000c0af-c217-41e9-b790-3043788f0000 ist unsere Gruppe von VIP-Benutzern.

Wir führen eine neue Entra ID-Gruppe ein 4444c0af-c217-41e9-b790-3043788f4444 die unterstützendes Personal enthält, das autorisiert wurde, VIP-Benutzer zu verwalten. Dieses unterstützende Personal sollte auch alle anderen grundlegenden Supportberechtigungen haben, daher fügen wir sie den bestehenden Rollen hinzu.

Das "Einschränken" einer Rolle wird einem Unterstützer keine neuen Rollen gewähren.

Beispiel: Einschränkung des US-Supportpersonals, nur US-Benutzer zu verwalten

In diesem Szenario haben wir US-basiertes Supportpersonal, das nur Benutzer verwalten soll, die sich in den USA befinden. Um diese Einschränkung durchzusetzen:

  • Erstellen Sie eine Berechtigungsregel, die explizit verweigert US-Supportern die Möglichkeit, Runbooks auf allen Benutzern auszuführen.

  • Fügen Sie eine Ausnahmeregel hinzu, die speziell erlaubt die Ausführung von Runbooks nur für US-Benutzer.

Dies stellt sicher, dass die Berechtigungen der US-Supporter strikt auf ihre beabsichtigte Zielgruppe (US-Benutzer) beschränkt sind und unbeabsichtigte Interaktionen mit Benutzern außerhalb dieses Bereichs verhindern.

Implementierung

  1. Eine Entra-Gruppe für Runbook-Ausführende muss im RealmJoin-Portal zugewiesen werden

    1. Einstellungen > Berechtigungen > Runbook Runner-Berechtigungen

    2. Die Entra-Gruppe der US-Supporter muss Mitglied der Runbook Runner-Gruppe sein, um allgemeine Runbook-Operationen im RealmJoin-Portal zu erlauben.

  2. Hinzufügen einer neuen Rolle unter Einstellungen > Runbook-Berechtigungen

    1. Fügen Sie im Abschnitt Rollen die Rolle USSupporters mit ihrer Entra-Gruppe (Gruppenobjekt-ID) hinzu

    2. Fügen Sie AllowedRunbookPatterns für die USSupporters hinzu

  3. Ändern Sie die TargetEntityGroups

    1. Die Alle-Benutzer-Gruppe muss die Rolle USSupporters mit einem leeren Wert einschränken (hier wird keine Entra-Gruppenobjekt-ID hinzugefügt). Dies ist eine implizite Verweigerung!

    2. Die US-Benutzer-Gruppe muss die Rolle USSupporters auf die Entra-Gruppenobjekt-ID der US-Supporter einschränken

Einschränkung des US-Supportpersonals, nur US-Benutzer zu verwalten

Nachfolgend das komplette Beispiel für dieses Szenario:

SchedulingEnabledRunbookPatterns

Dieser Abschnitt enthält eine Liste von Runbooks, die als "planbar" markiert werden. Das RealmJoin-Portal erlaubt das Zuweisen / Verwalten von Zeitplänen für diese Runbooks. Siehe Planung von Runbooks.

Das folgende Beispiel beschreibt das Standardverhalten, wenn SchedulingEnabledRunbookPatterns nicht definiert sind:

SchedulingDisabledRunbookPatterns

Dieser Abschnitt enthält eine Liste von Runbooks, die davon ausgeschlossen werden, als "planbar" markiert zu werden. Das RealmJoin-Portal erlaubt nicht das Zuweisen / Verwalten von Zeitplänen für diese Runbooks. Siehe Planung von Runbooks.

Ein Runbook, das sowohl in SchedulingEnabledRunbookPatterns als auch in SchedulingDisabledRunbookPatterns vorhanden ist, wird nicht planbar sein.

Standardmäßig sind keine Runbooks auf der schwarzen Liste. Das folgende Beispiel demonstriert nur die Syntax:

Zuletzt aktualisiert

War das hilfreich?