Beispiel: Bedingungen für die Azure-Rollenzuweisung für Blob Storage
In diesem Artikel sind einige Beispiele für Rollenzuweisungsbedingungen aufgeführt, mit denen der Zugriff auf Azure Blob Storage gesteuert werden kann.
Wichtig
Die attributbasierte Zugriffssteuerung (Attribute-Based Access Control, ABAC) in Azure ist allgemein verfügbar, um den Zugriff auf Azure Blob Storage, Azure Data Lake Storage Gen2 und Azure-Warteschlangen mithilfe der Attribute request
, resource
, environment
und principal
sowohl auf der standardmäßigen als auch auf der Premium-Speicherkonto-Leistungsstufe zu steuern. Derzeit befinden sich das Ressourcenattribut für Containermetadaten und das Anforderungsattribut zu möglichen Werten für „list blob“ in der VORSCHAU. Vollständige Informationen zum Status des ABAC-Features für Azure Storage finden Sie unter Status der Bedingungsfeatures in Azure Storage.
Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.
Voraussetzungen
Informationen zu den Voraussetzungen für das Hinzufügen oder Bearbeiten von Rollenzuweisungsbedingungen finden Sie unter Voraussetzungen für Bedingungen.
Zusammenfassung der Beispiele in diesem Artikel
Verwenden Sie die folgende Tabelle, um schnell ein Beispiel zu finden, das zu Ihrem ABAC-Szenario passt. Die Tabelle enthält eine kurze Beschreibung des Szenarios sowie eine Liste der Attribute, die im Beispiel verwendet werden, nach Quelle (Umgebung, Prinzipal, Anforderung und Ressource).
Blobindextags
Dieser Abschnitt enthält Beispiele für Blobindextags.
Wichtig
Auch wenn der Untervorgang Read content from a blob with tag conditions
derzeit zum Bereitstellen von Kompatibilität mit Bedingungen unterstützt wird, die während der ABAC-Featurevorschau implementiert wurden, gilt er als veraltet. Microsoft empfiehlt stattdessen die Verwendung der Aktion Read a blob
.
Beim Konfigurieren von ABAC-Bedingungen im Azure-Portal wird möglicherweise VERALTET: Lesen von Inhalten aus Blob mit Tagbedingungen angezeigt. Microsoft empfiehlt, den Vorgang zu entfernen und durch die Aktion Read a blob
zu ersetzen.
Wenn Sie Ihre eigene Bedingung erstellen, in der Sie den Lesezugriff durch Tagbedingungen einschränken möchten, lesen Sie Beispiel: Lesen von Blobs mit einem Blobindextag.
Beispiel: Lesen von Blobs mit einem Blobindextag
Diese Bedingung ermöglicht Benutzern das Lesen von Blobs mit dem Blobindextag-Schlüssel „Project“ und dem Wert „Cascade“. Versuche, ohne dieses Schlüssel-Wert-Tag auf Blobs zuzugreifen, sind nicht zulässig.
Damit diese Bedingung für einen Sicherheitsprinzipal wirksam ist, müssen Sie sie allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über den visuellen Editor im Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Ressource |
attribute | Blobindextags [Werte in Schlüssel] |
Schlüssel | {keyName} |
Operator | StringEquals |
Wert | {keyValue} |
Beispiel: Neue Blobs müssen ein Blobindextag enthalten
Diese Bedingung erfordert es, dass alle neuen Blobs den Blobindextag-Schlüssel „Project“ und den Wert „Cascade“ enthalten müssen.
Es gibt zwei Aktionen, mit denen Sie neue Blobs erstellen können. Sie müssen dies also für beide durchführen. Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | In ein Blob mit Blobindextags schreiben Schreiben in ein Blob mit Blobindextags |
Attributquelle | Anforderung |
Attribut | Blobindextags [Werte in Schlüssel] |
Schlüssel | {keyName} |
Operator | StringEquals |
Wert | {keyValue} |
Beispiel: Vorhandene Blobs müssen „Blobindextag“-Schlüssel haben
Diese Bedingung erfordert es, dass alle vorhandenen Blobs mit mindestens einem der zulässigen Blobindextag-Schlüssel gekennzeichnet werden: „Project“ oder „Program“. Diese Bedingung ist nützlich, um vorhandene Blobs mit Governance zu ergänzen.
Es gibt zwei Aktionen, mit denen Sie Tags in vorhandenen Blobs aktualisieren können. Sie müssen dies also für beide durchführen. Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | In ein Blob mit Blobindextags schreiben Blobindextags schreiben |
Attributquelle | Anforderung |
Attribut | Blobindextags [Schlüssel] |
Betreiber | ForAllOfAnyValues:StringEquals |
Wert | {keyName1} {keyName2} |
Beispiel: Vorhandene Blobs müssen einen „Blobindextag“-Schlüssel und Werte haben
Diese Bedingung erfordert es, dass alle vorhandenen Blobs den Blobindextag-Schlüssel „Project“ und die Werte „Cascade“, „Baker“ oder „Skagit“ haben. Diese Bedingung ist nützlich, um vorhandene Blobs mit Governance zu ergänzen.
Es gibt zwei Aktionen, mit denen Sie Tags in vorhandenen Blobs aktualisieren können. Sie müssen dies also für beide durchführen. Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | In ein Blob mit Blobindextags schreiben Blobindextags schreiben |
Attributquelle | Anforderung |
Attribut | Blobindextags [Schlüssel] |
Betreiber | ForAnyOfAnyValues:StringEquals |
Wert | {keyName} |
Operator | Und |
Ausdruck 2 | |
Attributquelle | Anforderung |
Attribut | Blobindextags [Werte in Schlüssel] |
Schlüssel | {keyName} |
Operator | ForAllOfAnyValues:StringEquals |
Wert | {keyValue1} {keyValue2} {keyValue3} |
Blobcontainernamen oder -pfade
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte anhand des Containernamens oder des Blobpfads.
Beispiel: Lesen, Schreiben oder Löschen von Blobs in benannten Containern
Diese Bedingung ermöglicht Benutzern das Lesen, Schreiben oder Löschen von Blobs in Speichercontainern namens blobs-example-container. Diese Bedingung ist nützlich für die Freigabe bestimmter Speichercontainer für andere Benutzer in einem Abonnement.
Es gibt fünf Aktionen zum Lesen, Schreiben und Löschen von vorhandenen Blobs. Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. Wird hinzugefügt, wenn bei den in dieser Bedingung enthaltenen Speicherkonten der hierarchische Namespace aktiviert wurde oder zukünftig möglicherweise aktiviert wird. |
Untervorgänge werden in dieser Bedingung nicht verwendet, da diese nur benötigt werden, wenn Bedingungen auf Grundlage von Tags erstellt werden.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Löschen eines Blobs Blob lesen Schreiben in einen Blob Blob oder Momentaufnahme erstellen oder Daten anfügen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Containername |
Betreiber | StringEquals |
Wert | {containerName} |
Beispiel: Lesen von Blobs in benannten Containern mit einem Pfad
Diese Bedingung ermöglicht den Lesezugriff auf Speichercontainer mit dem Namensmuster blobs-example-container und dem Blobpfad readonly/*. Diese Bedingung ist nützlich, wenn andere Benutzer im Abonnement Lesezugriff auf bestimmte Teile von Speichercontainern erhalten sollen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. Wird hinzugefügt, wenn bei den in dieser Bedingung enthaltenen Speicherkonten der hierarchische Namespace aktiviert wurde oder zukünftig möglicherweise aktiviert wird. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Containername |
Betreiber | StringEquals |
Wert | {containerName} |
Ausdruck 2 | |
Operator | Und |
Attributquelle | Ressource |
attribute | Blobpfad |
Betreiber | StringLike |
Wert | {pathString} |
Beispiel: Lesen oder Auflisten von Blobs in benannten Containern mit einem Pfad
Diese Bedingung ermöglicht den Lesezugriff und auch den Listenzugriff auf Speichercontainer mit dem Namen „blobs-example-container“ und dem Blobpfad „readonly/*“. Bedingung #1 gilt für Leseaktionen ohne Listenblobs. Bedingung #2 gilt für Listenblobs. Diese Bedingung ist nützlich, wenn andere Benutzer im Abonnement Lese- oder Listenzugriff auf bestimmte Teile von Speichercontainern erhalten sollen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. Wird hinzugefügt, wenn bei den in dieser Bedingung enthaltenen Speicherkonten der hierarchische Namespace aktiviert wurde oder zukünftig möglicherweise aktiviert wird. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Hinweis
Das Azure-Portal verwendet „präfix=''“ zum Auflisten von Blobs aus dem Stammverzeichnis des Containers. Nachdem die Bedingung mit dem Vorgang „list blobs“ unter Angabe des Präfixes „StringStartsWith 'readonly/'“ hinzugefügt wurde, können Zielbenutzer keine Blobs aus dem Stammverzeichnis des Containers im Azure-Portal auflisten.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Containername |
Betreiber | StringEquals |
Wert | {containerName} |
Ausdruck 2 | |
Operator | Und |
Attributquelle | Ressource |
attribute | Blobpfad |
Operator | StringStartsWith |
Wert | {pathString} |
Bedingung 2 | Einstellung |
---|---|
Aktionen | Auflisten von Blobs Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Containername |
Betreiber | StringEquals |
Wert | {containerName} |
Ausdruck 2 | |
Operator | Und |
Attributquelle | Anforderung |
Attribut | Blobpräfix |
Operator | StringStartsWith |
Wert | {pathString} |
Beispiel: Schreiben von Blobs in benannten Containern mit einem Pfad
Mit dieser Bedingung kann ein Partner (ein Microsoft Entra-Gastbenutzer) Dateien in Speichercontainern namens Contosocorp unter dem Pfad uploads/contoso/* ablegen. Diese Bedingung ist nützlich, damit andere Benutzer Daten in Speichercontainern ablegen können.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. Wird hinzugefügt, wenn bei den in dieser Bedingung enthaltenen Speicherkonten der hierarchische Namespace aktiviert wurde oder zukünftig möglicherweise aktiviert wird. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | In Blob schreiben Blob oder Momentaufnahme erstellen oder Daten anfügen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Containername |
Betreiber | StringEquals |
Wert | {containerName} |
Ausdruck 2 | |
Operator | Und |
Attributquelle | Ressource |
attribute | Blobpfad |
Betreiber | StringLike |
Wert | {pathString} |
Beispiel: Lesen von Blobs mit einem Blobindextag und einem Pfad
Diese Bedingung ermöglicht einem Benutzer das Lesen von Blobs mit dem Blobindextag-Schlüssel „Program“, dem Wert „Alpine“ und dem Blobpfad „logs*“. Der Blobpfad „logs*“ enthält auch den Blobnamen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Ressource |
attribute | Blobindextags [Werte in Schlüssel] |
Schlüssel | {keyName} |
Operator | StringEquals |
Wert | {keyValue} |
Bedingung 2 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Ressource |
attribute | Blobpfad |
Betreiber | StringLike |
Wert | {pathString} |
Blob-Containermetadaten
Beispiel: Lesen von Blobs in Containern mit bestimmten Metadaten
Diese Bedingung ermöglicht es Benutzerinnen und Benutzern, Blobs in Blob-Containern mit einem bestimmten Schlüssel/Wertpaar für Metadaten zu lesen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Hinweise |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Ressource |
Attribut | Containermetadaten |
Operator | StringEquals |
Wert | {containerName} |
Beispiel: Schreiben oder Löschen von Blobs im Container mit bestimmten Metadaten
Diese Bedingung ermöglicht es Benutzerinnen und Benutzern, Blobs in Blob-Containern mit einem bestimmten Schlüssel/Wertpaar für Metadaten zu schreiben oder zu löschen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Hinweise |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | In Blob schreiben Löschen eines Blobs |
Attributquelle | Ressource |
Attribut | Containermetadaten |
Operator | StringEquals |
Wert | {containerName} |
Blobversionen oder Blob-Momentaufnahmen
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte anhand der Blobversion oder Momentaufnahme.
Beispiel: Lesen nur von aktuellen Blobversionen
Diese Bedingung ermöglicht einem Benutzer nur das Lesen von aktuellen Blobversionen. Der Benutzer kann keine anderen Blobversionen lesen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Ist die aktuelle Version |
Operator | BoolEquals |
Wert | True |
Beispiel: Lesen von aktuellen Blobversionen und einer bestimmten Blobversion
Diese Bedingung ermöglicht einem Benutzer das Lesen von aktuellen Blobversionen sowie von Blobs mit der Versions-ID „2022-06-01T23:38:32.8883645Z“. Der Benutzer kann keine anderen Blobversionen lesen. Das Attribut Versions-ID ist nur für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Anforderung |
Attribut | Versions-ID |
Operator | DateTimeEquals |
Wert | <blobVersionId> |
Ausdruck 2 | |
Operator | oder |
Attributquelle | Ressource |
attribute | Ist die aktuelle Version |
Operator | BoolEquals |
Wert | True |
Beispiel: Löschen von alten Blobversionen
Diese Bedingung ermöglicht einem Benutzer das Löschen der Versionen eines Blobs, die älter als 01.06.2022 sind, um eine Bereinigung durchzuführen. Das Attribut Versions-ID ist nur für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Hinweise |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/deleteBlobVersion/action |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Löschen eines Blobs Löschen einer Version eines Blobs |
Attributquelle | Anforderung |
Attribut | Versions-ID |
Operator | DateTimeLessThan |
Wert | <blobVersionId> |
Beispiel: Lesen von aktuellen Blobversionen und beliebigen Blob-Momentaufnahmen
Diese Bedingung ermöglicht einem Benutzer das Lesen von aktuellen Blobversionen und beliebigen Blob-Momentaufnahmen. Das Attribut Versions-ID ist nur für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde. Das Attribut Momentaufnahme ist für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde, und es befindet sich zurzeit in der Vorschau für Speicherkonten, bei denen der hierarchische Namespace aktiviert wurde.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Anforderung |
Attribut | Momentaufnahme |
Exists | Überprüft |
Ausdruck 2 | |
Operator | oder |
Attributquelle | Ressource |
attribute | Ist die aktuelle Version |
Operator | BoolEquals |
Wert | True |
Beispiel: Erlaubt dem Vorgang „list blob“, Blob-Metadaten, Momentaufnahmen oder Versionen einzuschließen
Diese Bedingung ermöglicht es einer Benutzerin oder einem Benutzer, Blobs in einem Container aufzulisten und Metadaten, Momentaufnahmen und Versionsinformationen hinzuzufügen. Das Attribut Mögliche Werte für „list blob“ ist für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde.
Hinweis
Mögliche Werte für „list blob“ ist ein Anforderungsattribute und funktionieren, indem Werte im Parameter include
beim Aufrufen des Vorgangs list blobs zugelassen oder eingeschränkt werden. Die Werte im Parameter include
werden mit den Werten verglichen, die in der Bedingung angegeben sind, wobei produktübergreifende Vergleichsoperatoren verwendet werden. Wenn der Vergleich als „true“ ausgewertet wird, ist die Anforderung List Blobs
zulässig. Wenn der Vergleich als „false“ ausgewertet wird, wird die Anforderung List Blobs
verweigert.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Hinweise |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Auflisten von Blobs |
Attributquelle | Anforderung |
Attribut | Mögliche Werte für „list blobs“ |
Operator | ForAllOfAnyValues:StringEqualsIgnoreCase |
Wert | {'metadata', 'snapshots', 'versions'} |
Beispiel: Einschränken, dass der Vorgang „list blob“ keine Blobmetadaten enthält
Durch diese Bedingung wird verhindert, dass eine Benutzerin oder ein Benutzer Blobs auflistet, wenn Metadaten in der Anforderung enthalten sind. Das Attribut Mögliche Werte für „list blob“ ist für Speicherkonten verfügbar, bei denen der hierarchische Namespace nicht aktiviert wurde.
Hinweis
Mögliche Werte für „list blob“ ist ein Anforderungsattribute und funktionieren, indem Werte im Parameter include
beim Aufrufen des Vorgangs list blobs zugelassen oder eingeschränkt werden. Die Werte im Parameter include
werden mit den Werten verglichen, die in der Bedingung angegeben sind, wobei produktübergreifende Vergleichsoperatoren verwendet werden. Wenn der Vergleich als „true“ ausgewertet wird, ist die Anforderung List Blobs
zulässig. Wenn der Vergleich als „false“ ausgewertet wird, wird die Anforderung List Blobs
verweigert.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Hinweise |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Auflisten von Blobs |
Attributquelle | Anforderung |
Attribut | Mögliche Werte für „list blobs“ |
Operator | ForAllOfAllValues:StringNotEquals |
Wert | {'metadata'} |
Hierarchischer Namespace
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte, je nachdem, ob der hierarchische Namespace für ein Speicherkonto aktiviert ist.
Beispiel: Lesen nur von Speicherkonten mit aktiviertem hierarchischem Namespace
Diese Bedingung ermöglicht einem Benutzer nur das Lesen von Blobs in Speicherkonten mit aktiviertem hierarchischem Namespace. Diese Bedingung gilt nur für den Ressourcengruppenbereich oder darüber.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Alle Datenvorgänge für Konten mit aktiviertem hierarchischem Namespace (wenn zutreffend) |
Attributquelle | Ressource |
attribute | Ist der aktivierte hierarchische Namespace |
Operator | BoolEquals |
Wert | True |
Verschlüsselungsbereich
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte mit einem genehmigten Verschlüsselungsbereich.
Beispiel: Lesen von Blobs mit bestimmten Verschlüsselungsbereichen
Diese Bedingung ermöglicht einem Benutzer das Lesen von Blobs, die mit dem Verschlüsselungsbereich validScope1
oder validScope2
verschlüsselt wurden.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen |
Attributquelle | Ressource |
attribute | Name des Verschlüsselungsbereichs |
Betreiber | ForAnyOfAnyValues:StringEquals |
Wert | <scopeName> |
Beispiel: Lesen oder Schreiben von Blobs im benannten Speicherkonto mit spezifischem Verschlüsselungsbereich
Diese Bedingung ermöglicht einem Benutzer das Lesen oder Schreiben von Blobs in einem Speicherkonto namens sampleaccount
, das mit dem Verschlüsselungsbereich ScopeCustomKey1
verschlüsselt wurde. Wenn Blobs nicht mit ScopeCustomKey1
verschlüsselt oder entschlüsselt sind, wird die Anforderung als unzulässig zurückgegeben.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Hinweis
Da Verschlüsselungsbereiche für verschiedene Speicherkonten unterschiedlich sein könnten, empfiehlt es sich, das Attribut storageAccounts:name
zusammen mit dem Attribut encryptionScopes:name
zu verwenden, um den spezifischen zulässigen Verschlüsselungsbereich einzuschränken.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Blob lesen Schreiben in einen Blob Blob oder Momentaufnahme erstellen oder Daten anfügen |
Attributquelle | Ressource |
attribute | Kontoname |
Betreiber | StringEquals |
Wert | <accountName> |
Ausdruck 2 | |
Operator | Und |
Attributquelle | Ressource |
attribute | Name des Verschlüsselungsbereichs |
Betreiber | ForAnyOfAnyValues:StringEquals |
Wert | <scopeName> |
Prinzipalattribute
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte anhand benutzerdefinierter Sicherheitsprinzipale.
Beispiel: Lesen oder Schreiben von Blobs basierend auf Blobindextags und benutzerdefinierten Sicherheitsattributen
Diese Bedingung ermöglicht den Lese- oder Schreibzugriff auf Blobs, wenn der Benutzer über ein benutzerdefiniertes Sicherheitsattribut verfügt, das mit dem Blobindextag übereinstimmt.
Wenn Brenda beispielsweise das Attribut Project=Baker
hat, kann sie nur Blobs mit dem Blobindextag Project=Baker
lesen oder schreiben. Entsprechend kann Chandra nur Blobs mit Project=Cascade
lesen oder schreiben.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgenden Aktionen enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Weitere Informationen finden Sie unter Zulassen des Lesezugriffs auf Blobs basierend auf Tags und benutzerdefinierten Sicherheitsattributen.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Lesen der Bedingungen eines Blobs |
Attributquelle | Prinzipal |
Attribut | <attributeset>_<key> |
Operator | StringEquals |
Option | attribute |
Attributquelle | Ressource |
attribute | Blobindextags [Werte in Schlüssel] |
Schlüssel | <key> |
Bedingung 2 | Einstellung |
---|---|
Aktionen | In ein Blob mit Blobindextags schreiben Schreiben in ein Blob mit Blobindextags |
Attributquelle | Prinzipal |
Attribut | <attributeset>_<key> |
Operator | StringEquals |
Option | attribute |
Attributquelle | Anforderung |
Attribut | Blobindextags [Werte in Schlüssel] |
Schlüssel | <key> |
Beispiel: Lesen von Blobs basierend auf Blobindextags und benutzerdefinierten Sicherheitsattributen mit mehreren Werten
Diese Bedingung ermöglicht den Lesezugriff auf Blobs, wenn der Benutzer ein benutzerdefiniertes Sicherheitsattribut mit beliebigen Werten hat, das mit dem Blobindextag übereinstimmt.
Wenn Chandra beispielsweise über das Attribut „Project“ mit den Werten „Baker“ und „Cascade“ verfügt, kann sie nur Blobs mit dem Blobindextag Project=Baker
oder Project=Cascade
lesen.
Sie müssen diese Bedingung allen Rollenzuweisungen hinzufügen, die die folgende Aktion enthalten:
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Weitere Informationen finden Sie unter Zulassen des Lesezugriffs auf Blobs basierend auf Tags und benutzerdefinierten Sicherheitsattributen.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung über das Azure-Portal hinzuzufügen.
Bedingung 1 | Einstellung |
---|---|
Aktionen | Lesen der Bedingungen eines Blobs |
Attributquelle | Ressource |
attribute | Blobindextags [Werte in Schlüssel] |
Schlüssel | <key> |
Operator | ForAnyOfAnyValues:StringEquals |
Option | attribute |
Attributquelle | Prinzipal |
Attribut | <attributeset>_<key> |
Umgebungsattribute
Dieser Abschnitt enthält Beispiele zum Einschränken des Zugriffs auf Objekte anhand der Netzwerkumgebung oder des aktuellen Datums und der aktuellen Uhrzeit.
Beispiel: Zulassen des Lesezugriffs auf Blobs nach einem bestimmten Datum und einer bestimmten Uhrzeit
Diese Bedingung ermöglicht Lesezugriff auf Blobcontainer „container1
“ erst nach 13:00 Uhr (UTC) am 1. Mai 2023.
Es gibt zwei mögliche Aktionen zum Lesen vorhandener Blobs. Damit diese Bedingung für Prinzipale mit mehreren Rollenzuweisungen wirksam wird, müssen Sie diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten.
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Hinzufügen einer Aktion
Wählen Sie Aktion hinzufügen aus, und wählen Sie dann nur den Untervorgang Lesen eines Blobs aus, wie in der folgenden Tabelle gezeigt.
Aktion | Untervorgang |
---|---|
Alle Lesevorgänge | Blob lesen |
Wählen Sie nicht die Aktion Alle Lesevorgänge der obersten Ebene oder irgendeinen anderen Untervorgang aus, wie in der folgenden Abbildung gezeigt:
Ausdruck erstellen
Verwenden Sie die Werte in der folgenden Tabelle, um den Ausdrucksteil der Bedingung zu erstellen:
Einstellung Wert Attributquelle Ressource attribute Containername Betreiber StringEquals Wert container1
Logischer Operator 'AND' Attributquelle Umgebung attribute UtcNow Betreiber DateTimeGreaterThan Wert 2023-05-01T13:00:00.000Z
Die folgende Abbildung zeigt die Bedingung, nachdem die Einstellungen in das Azure-Portal eingegeben wurden. Beachten Sie, dass Sie Ausdrücke gruppieren müssen, damit sie korrekt ausgewertet werden können.
Beispiel: Zulassen des Zugriffs auf Blobs in bestimmten Containern aus einem bestimmten Subnetz
Diese Bedingung ermöglicht Lese-, Schreib-, Hinzufüge- und Löschzugriff auf Blobs in „container1
“ nur aus dem Subnetz „default
“ im virtuellen Netzwerk „virtualnetwork1
“. Um das Subnet-Attribut in diesem Beispiel zu verwenden, muss das Subnetz über aktivierte Dienstendpunkte für Azure Storage verfügen.
Es gibt fünf mögliche Aktionen für den Lese-, Schreib-, Hinzufüge- und Löschzugriff auf vorhandene Blobs. Damit diese Bedingung für Prinzipale mit mehreren Rollenzuweisungen wirksam wird, müssen Sie diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten.
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Hinzufügen einer Aktion
Wählen Sie Aktion hinzufügen aus, und wählen Sie dann nur die Aktionen der obersten Ebene aus, die in der folgenden Tabelle gezeigt werden.
Aktion | Untervorgang |
---|---|
Alle Lesevorgänge | Nicht zutreffend |
In Blob schreiben | Nicht zutreffend |
Blob oder Momentaufnahme erstellen oder Daten anfügen | Nicht zutreffend |
Löschen eines Blobs | Nicht zutreffend |
Wählen Sie keine einzelnen Untervorgänge aus, wie in der folgenden Abbildung gezeigt:
Ausdruck erstellen
Verwenden Sie die Werte in der folgenden Tabelle, um den Ausdrucksteil der Bedingung zu erstellen:
Einstellung Wert Attributquelle Ressource attribute Containername Betreiber StringEquals Wert container1
Logischer Operator 'AND' Attributquelle Umgebung attribute Subnetz Betreiber StringEqualsIgnoreCase Wert /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/virtualNetworks/virtualnetwork1/subnets/default
Die folgende Abbildung zeigt die Bedingung, nachdem die Einstellungen in das Azure-Portal eingegeben wurden. Beachten Sie, dass Sie Ausdrücke gruppieren müssen, damit sie korrekt ausgewertet werden können.
Beispiel: Zugriff über private Verbindung erforderlich, um Blobs mit hoher Vertraulichkeit zu lesen
Diese Bedingung erfordert Anforderungen zum Lesen von Blobs, bei denen die Vertraulichkeit von Blobindextags den Wert „high
“ hat, um sich über einer (beliebigen) privaten Verbindung zu befinden. Dies bedeutet, dass alle Versuche, hochsensible Blobs aus dem öffentlichen Internet zu lesen, nicht zulässig sind. Benutzer können Blobs aus dem öffentlichen Internet lesen, deren Vertraulichkeit auf einen anderen Wert als „high
“ festgelegt ist.
Eine Wahrheitstabelle für diese ABAC-Beispielbedingung folgt:
Aktion | Sensitivität | Private Link | Zugriff |
---|---|---|---|
Blob lesen | high | Ja. | Zulässig |
Blob lesen | high | Nein | Nicht zulässig |
Blob lesen | NICHT hoch | Ja. | Zulässig |
Blob lesen | NICHT hoch | Nein | Zulässig |
Es gibt zwei mögliche Aktionen zum Lesen vorhandener Blobs. Damit diese Bedingung für Prinzipale mit mehreren Rollenzuweisungen wirksam wird, müssen Sie diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten.
Aktion Notizen Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung mithilfe des visuellen Bedingungs-Editors im Azure-Portal hinzuzufügen.
Hinzufügen einer Aktion
Wählen Sie Aktion hinzufügen aus, und wählen Sie dann nur den Untervorgang Lesen eines Blobs aus, wie in der folgenden Tabelle gezeigt.
Aktion | Untervorgang |
---|---|
Alle Lesevorgänge | Blob lesen |
Wählen Sie nicht die Aktion Alle Lesevorgänge der obersten Ebene irgendeines anderen Untervorgangs aus, wie in der folgenden Abbildung gezeigt:
Ausdruck erstellen
Verwenden Sie die Werte in der folgenden Tabelle, um den Ausdrucksteil der Bedingung zu erstellen:
Group Einstellung Wert Gruppe #1 Attributquelle Ressource attribute Blobindextags [Werte in Schlüssel] Schlüssel sensitivity
Betreiber StringEquals Wert high
Logischer Operator 'AND' Attributquelle Umgebung attribute Ist eine private Verbindung Operator BoolEquals Wert True
Ende der Gruppe #1 Logischer Operator 'OR' Attributquelle Ressource attribute Blobindextags [Werte in Schlüssel] Schlüssel sensitivity
Betreiber StringNotEquals Wert high
Die folgende Abbildung zeigt die Bedingung, nachdem die Einstellungen in das Azure-Portal eingegeben wurden. Beachten Sie, dass Sie Ausdrücke gruppieren müssen, damit sie korrekt ausgewertet werden können.
Beispiel: Zulassen des Zugriffs auf einen Container nur von einem bestimmten privaten Endpunkt aus
Diese Bedingung erfordert, dass alle Lese-, Schreib-, Hinzufüge- und Löschvorgänge für Blobs in einem Speichercontainer namens „container1
“ über einen privaten Endpunkt namens „privateendpoint1
“ erfolgen. Für alle anderen Container, die nicht „container1
“ heißen, muss der Zugriff nicht über den privaten Endpunkt erfolgen.
Es gibt fünf potentielle Aktionen zum Lesen, Schreiben und Löschen von vorhandenen Blobs. Damit diese Bedingung für Prinzipale mit mehreren Rollenzuweisungen wirksam wird, müssen Sie diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten.
Aktion | Notizen |
---|---|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete |
|
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action |
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“. Wird hinzugefügt, wenn bei den in dieser Bedingung enthaltenen Speicherkonten der hierarchische Namespace aktiviert wurde oder zukünftig möglicherweise aktiviert wird. |
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung mithilfe des visuellen Bedingungs-Editors im Azure-Portal hinzuzufügen.
Hinzufügen einer Aktion
Wählen Sie Aktion hinzufügen aus, und wählen Sie dann nur die Aktionen der obersten Ebene aus, die in der folgenden Tabelle gezeigt werden.
Aktion | Untervorgang |
---|---|
Alle Lesevorgänge | Nicht zutreffend |
In Blob schreiben | Nicht zutreffend |
Blob oder Momentaufnahme erstellen oder Daten anfügen | Nicht zutreffend |
Löschen eines Blobs | Nicht zutreffend |
Wählen Sie keine einzelnen Untervorgänge aus, wie in der folgenden Abbildung gezeigt:
Ausdruck erstellen
Verwenden Sie die Werte in der folgenden Tabelle, um den Ausdrucksteil der Bedingung zu erstellen:
Group Einstellung Wert Gruppe #1 Attributquelle Ressource attribute Containername Betreiber StringEquals Wert container1
Logischer Operator 'AND' Attributquelle Umgebung attribute Privater Endpunkt Betreiber StringEqualsIgnoreCase Wert /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateEndpoints/privateendpoint1
Ende der Gruppe #1 Logischer Operator 'OR' Attributquelle Ressource attribute Containername Betreiber StringNotEquals Wert container1
Die folgende Abbildung zeigt die Bedingung, nachdem die Einstellungen in das Azure-Portal eingegeben wurden. Beachten Sie, dass Sie Ausdrücke gruppieren müssen, damit sie korrekt ausgewertet werden können.
Beispiel: Zulassen des Lesezugriffs auf höchst vertrauliche Blobdaten nur von einem bestimmten privaten Endpunkt aus und für Benutzern, die für den Zugriff gekennzeichnet sind
Diese Bedingung erfordert, dass Blobs, deren Indextag Vertraulichkeit auf „high
“ festgelegt ist, nur von Benutzern gelesen werden können, die über einen übereinstimmenden Wert für ihr Sicherheitsattribut Vertraulichkeit verfügen. Darüber hinaus muss der Zugriff über einen privaten Endpunkt namens „privateendpoint1
“ geschehen. Auf Blobs mit einem anderen Wert für das Tag Vertraulichkeit kann über andere Endpunkte oder über das Internet zugegriffen werden.
Es gibt zwei mögliche Aktionen zum Lesen vorhandener Blobs. Damit diese Bedingung für Prinzipale mit mehreren Rollenzuweisungen wirksam wird, müssen Sie diese Bedingung allen Rollenzuweisungen hinzufügen, die eine der folgenden Aktionen enthalten.
Aktion Notizen Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action
Wird hinzugefügt, wenn die Rollendefinition diese Aktion enthält, z. B. „Besitzer von Speicherblobdaten“.
Die Bedingung kann einer Rollenzuweisung mithilfe des Azure-Portal oder von Azure PowerShell hinzugefügt werden. Das Portal verfügt über zwei Tools zum Erstellen von ABAC-Bedingungen: den visuellen Editor und den Code-Editor. Sie können zwischen den beiden Editoren im Azure-Portal wechseln, um Ihre Bedingungen in unterschiedlichen Ansichten anzuzeigen. Wechseln Sie zwischen der Registerkarte Visueller Editor und den Registerkarten des Code-Editors, um die Beispiele für Ihren bevorzugten Portal-Editor anzuzeigen.
Diese Einstellungen müssen verwendet werden, um diese Bedingung mithilfe des visuellen Bedingungs-Editors im Azure-Portal hinzuzufügen.
Hinzufügen einer Aktion
Wählen Sie Aktion hinzufügen aus, und wählen Sie dann nur den Untervorgang Lesen eines Blobs aus, wie in der folgenden Tabelle gezeigt.
Aktion | Untervorgang |
---|---|
Alle Lesevorgänge | Blob lesen |
Wählen Sie nicht die Aktion auf oberster Ebene aus, wie in der folgenden Abbildung gezeigt:
Ausdruck erstellen
Verwenden Sie die Werte in der folgenden Tabelle, um den Ausdrucksteil der Bedingung zu erstellen:
Group | Einstellung | Wert |
---|---|---|
Gruppe #1 | ||
Attributquelle | Prinzipal | |
Attribut | <attributeset>_<key> | |
Operator | StringEquals | |
Option | attribute | |
Logischer Operator | 'AND' | |
Attributquelle | Ressource | |
attribute | Blobindextags [Werte in Schlüssel] | |
Schlüssel | <key> | |
Logischer Operator | 'AND' | |
Attributquelle | Umgebung | |
attribute | Privater Endpunkt | |
Betreiber | StringEqualsIgnoreCase | |
Wert | /subscriptions/<your subscription id>/resourceGroups/<resource group name>/providers/Microsoft.Network/privateEndpoints/privateendpoint1 |
|
Ende der Gruppe #1 | ||
Logischer Operator | 'OR' | |
Attributquelle | Ressource | |
attribute | Blobindextags [Werte in Schlüssel] | |
Schlüssel | sensitivity |
|
Betreiber | StringNotEquals | |
Wert | high |
Die folgende Abbildung zeigt die Bedingung, nachdem die Einstellungen in das Azure-Portal eingegeben wurden. Beachten Sie, dass Sie Ausdrücke gruppieren müssen, damit sie korrekt ausgewertet werden können.
Nächste Schritte
- Tutorial: Hinzufügen einer Rollenzuweisungsbedingung zum Einschränken des Zugriffs auf Blobs mit dem Azure-Portal
- Aktionen und Attribute für Azure-Rollenzuweisungsbedingungen für Azure Blob Storage
- Format und Syntax von Azure-Rollenzuweisungsbedingungen
- Problembehandlung: Bedingungen für die Azure-Rollenzuweisung