Freigeben über


Rollenbasierte Zugriffssteuerung in Azure Digital Twins

Wichtig

Eine neue Version des Azure Digital Twins-Diensts wurde veröffentlicht. Angesichts der erweiterten Funktionen des neuen Diensts wurde der ursprüngliche Azure Digital Twins-Dienst (in diesem Dokumentationssatz beschrieben) eingestellt.

Um die Dokumentation für den neuen Dienst anzuzeigen, besuchen Sie die aktive Azure Digital Twins-Dokumentation.

Azure Digital Twins ermöglicht präzise Zugriffssteuerung für bestimmte Daten, Ressourcen und Aktionen in Ihrem Raumgraphen. Dies erfolgt durch die detaillierte Rollen- und Berechtigungsverwaltung als rollenbasierte Zugriffssteuerung (RBAC). RBAC besteht aus Rollen und Rollenzuweisungen. Rollen bestimmen die Berechtigungsebene. Rollenzuweisungen ordnen einem Benutzer oder Gerät eine Rolle zu.

Mit RBAC können Berechtigungen zugewiesen werden für:

  • Einen Benutzer
  • Ein Gerät
  • Ein Dienstprinzipal
  • Eine benutzerdefinierte Funktion
  • Alle Benutzer, die einer Domäne angehören.
  • Einen Mandanten

Der Grad des Zugriffs kann darüber hinaus angepasst werden.

RBAC ist besonders, weil Berechtigungen im Raumgraphen von oben nach vererbt werden.

Welche Möglichkeiten bietet die RBAC?

Ein Entwickler kann RBAC für folgende Aufgaben verwenden:

  • Einem Benutzer die Berechtigung gewähren, Geräte für ein ganzes Gebäude oder nur für einen bestimmten Raum oder eine bestimmte Etage zu verwalten
  • Einem Administrator globalen Zugriff auf alle Raumgraphknoten für einen gesamten Graphen oder nur für einen Abschnitt des Graphen gewähren
  • Einem Supportspezialisten Lesezugriff auf den Graphen gewähren, wobei Zugriffsschlüssel ausgenommen sind
  • Jedem Mitglied einer Domäne Lesezugriff auf alle Graphobjekte gewähren

Best Practices für RBAC

Rollenbasierte Zugriffssteuerung ist eine vererbungsbasierte Sicherheitsstrategie zum Verwalten von Zugriffen, Berechtigungen und Rollen. Untergeordnete Rollen erben Berechtigungen von übergeordneten Rollen. Berechtigungen können auch zugewiesen werden, ohne dass sie von einer übergeordneten Rolle geerbt wurden. Sie können auch zugewiesen werden, um eine Rolle nach Bedarf anzupassen.

Beispielsweise benötigt ein Bereichsadministrator möglicherweise globalen Zugriff zum Ausführen aller Vorgänge für einen angegebenen Bereich. Der Zugriff schließt alle Knoten unterhalb oder innerhalb des Bereichs ein. Ein Geräte-Installationsprogramm benötigt möglicherweise nur Berechtigungen zum Lesen und Aktualisieren für Geräte und Sensoren.

In jedem Fall werden Rollen genau die Zugriffsberechtigungen erteilt, die sie zum Erfüllen ihrer Aufgaben benötigen und die dem Prinzip der geringsten Rechte entsprechen. Nach diesem Prinzip gilt für eine Identität nur Folgendes:

  • Der Umfang an Zugriff, den sie zum Ausführen ihrer Aufgabe benötigt.
  • Eine Rolle, die für das Ausführen ihrer Aufgabe geeignet und darauf beschränkt ist.

Wichtig

Befolgen Sie immer das Prinzip der geringsten Rechte.

Zwei weitere wichtige Aspekte einer rollenbasierten Zugriffssteuerung, die zu beachten sind:

  • Überprüfen Sie in regelmäßigen Abständen Rollenzuweisungen, um sicherzustellen, dass jede Rolle die richtigen Berechtigungen hat.
  • Bereinigen Sie Rollen und Zuweisungen, sobald Rollen oder Zuweisungen von Personen geändert wurden.

Rollen

Rollendefinitionen

Eine Rollendefinition ist eine Sammlung von Berechtigungen und anderen Attributen, die sich zu einer Rolle zusammensetzen. Eine Rollendefinition enthält die zulässigen Vorgänge, wozu ERSTELLEN, LESEN, AKTUALISIEREN und LÖSCHEN gehören, die von jedem Objekt mit dieser Rolle ausgeführt werden können. Darin ist auch angegeben, für welche Objekttypen diese Berechtigungen gelten.

Die folgende Tabelle beschreibt die in Azure Digital Twins verfügbaren Rollen:

Rolle Beschreibung Bezeichner
Space Administrator ERSTELLEN-, LESEN-, AKTUALISIEREN- und LÖSCHEN-Berechtigung für den angegebenen Raum und alle Knoten darunter. Globale Berechtigung. 98e44ad7-28d4-4007-853b-b9968ad132d1
Benutzeradministrator ERSTELLEN-, LESEN-, AKTUALISIEREN- und LÖSCHEN-Berechtigung für Benutzer und benutzerbezogene Objekte. LESEN-Berechtigung für Räume. dfaac54c-f583-4dd2-b45d-8d4bbc0aa1ac
Device Administrator ERSTELLEN-, LESEN-, AKTUALISIEREN- und LÖSCHEN-Berechtigung für Geräte und gerätebezogene Objekte. LESEN-Berechtigung für Räume. 3cdfde07-bc16-40d9-bed3-66d49a8f52ae
Key Administrator ERSTELLEN, LESEN, AKTUALISIEREN und LÖSCHEN-Berechtigung für Zugriffsschlüssel. LESEN-Berechtigung für Räume. 5a0b1afc-e118-4068-969f-b50efb8e5da6
Token Administrator ERSTELLEN- und AKTUALISIEREN-Berechtigung für Zugriffsschlüssel. LESEN-Berechtigung für Räume. 38a3bb21-5424-43b4-b0bf-78ee228840c3
Benutzer LESEN-Berechtigung für Räume, Sensoren und Benutzer, einschließlich der dazugehörigen Objekte. b1ffdb77-c635-4e7e-ad25-948237d85b30
Support Specialist LESEN-Berechtigung für alle Objekte außer Zugriffsschlüsseln. 6e46958b-dc62-4e7c-990c-c3da2e030969
Device Installer LESEN- und AKTUALISIEREN-Berechtigung für Geräte und Sensoren, einschließlich der dazugehörigen Objekte. LESEN-Berechtigung für Räume. b16dd9fe-4efe-467b-8c8c-720e2ff8817c
Gatewaygerät ERSTELLEN-Berechtigung für Sensoren. READ-Berechtigung für Geräte und Sensoren, die ihre entsprechenden verwandten Objekte enthalten. d4c69766-e9bd-4e61-bfc1-d8b6e686c7a8

Hinweis

Um die vollständigen Definitionen für die vorherigen Rollen abzurufen, fragen Sie die System-/Rollen-API ab. Weitere Informationen finden Sie unter Erstellen und Verwalten von Rollenzuweisungen.

Objektbezeichnertypen

objectIdType (oder Objektbezeichnertyp) bezieht sich auf den Typ der Identität, der einer Rolle zugewiesen wird. Mit Ausnahme der Typen DeviceId und UserDefinedFunctionId entsprechen Objektbezeichnertypen Eigenschaften von Azure Active Directory-Objekten.

Die folgende Tabelle enthält die unterstützten Objektbezeichnertypen in Azure Digital Twins:

type BESCHREIBUNG
UserId Weist einem Benutzer eine Rolle zu.
deviceId Weist einem Gerät eine Rolle zu.
DomainName Weist einem Domänennamen eine Rolle zu. Jeder Benutzer mit dem angegebenen Domänennamen hat die Zugriffsrechte der entsprechenden Rolle.
TenantId Weist einem Mandanten eine Rolle zu. Jeder Benutzer, der zu der angegebenen Azure AD-Mandanten-ID gehört, hat die Zugriffsrechte der entsprechenden Rolle.
ServicePrincipalId Weist einer Dienstprinzipalobjekt-ID eine Rolle zu.
UserDefinedFunctionId Weist einer benutzerdefinierten Funktion (User-defined Function, UDF) eine Rolle zu.

Tipp

Weitere Informationen zum Gewähren von Berechtigungen für Ihren Dienstprinzipal finden Sie unter Erstellen und Verwalten von Rollenzuweisungen.

In den folgenden Referenzartikeln werden die nachfolgenden Themen beschrieben:

Rollenzuweisungen

Eine Azure Digital Twins-Rollenzuweisung verknüpft ein Objekt, z.B. einen Benutzer oder einen Azure AD-Mandant, mit einer Rolle und einem Raum. Berechtigungen werden für alle Objekte gewährt, die zu diesem Raum gehören. Der Raum umfasst den gesamten Raumgraphen darunter.

Angenommen, ein Benutzer hat eine Rollenzuweisung mit der Rolle DeviceInstaller für den Stammknoten eines Raumgraphen, der einem Gebäude entspricht. Der Benutzer kann dann Geräte für diesen Knoten und alle anderen untergeordneten Räume im Gebäude lesen und aktualisieren.

Um einem Empfänger Berechtigungen zuzuweisen, erstellen Sie eine Rollenzuweisung. Um die Berechtigung zu widerrufen, entfernen Sie die Rollenzuweisung.

Wichtig

Weitere Informationen zur Rollenzuweisung finden Sie unter Erstellen und Verwalten von Rollenzuweisungen.

Nächste Schritte