Verwalten von Berechtigungen zum Wiederherstellen eines Azure Cosmos DB-Kontos
GILT FÜR: NoSQL MongoDB Gremlin Tabelle
Mit Azure Cosmos DB können Sie die Wiederherstellungsberechtigungen für ein Konto für die fortlaufende Sicherung auf eine bestimmte Rolle oder einen Prinzipal isolieren und einschränken. Diese Berechtigungen können im Abonnementbereich oder präziser im Quellkontobereich angewendet werden, wie in der folgenden Abbildung dargestellt:
Bei einem Bereich handelt es sich um einen Satz von Ressourcen, die Zugriff haben. Weitere Informationen zu Bereichen finden Sie in der Azure RBAC-Dokumentation. In Azure Cosmos DB stellen das Quellabonnement und das Datenbankkonto die anwendbaren Bereiche für die meisten Anwendungsfälle dar. Der Prinzipal, der die Wiederherstellungsaktionen ausführt, muss über Schreibberechtigungen für die Zielressourcengruppe verfügen.
Zuweisen von Rollen für die Wiederherstellung im Azure-Portal
Um eine Wiederherstellung ausführen zu können, benötigt ein Benutzer oder ein Prinzipal die Berechtigung zum Wiederherstellen (d. h. die Berechtigung restore/action) und die Berechtigung zum Bereitstellen eines neuen Kontos (die Berechtigung write). Um diese Berechtigungen zu erteilen, kann der*die Besitzer*in des Abonnements einem Prinzipal die integrierten Rollen CosmosRestoreOperator
und Cosmos DB Operator
zuweisen.
Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Ihrem Abonnement. Die Rolle
CosmosRestoreOperator
ist auf Abonnementebene verfügbar.Wählen Sie Zugriffssteuerung (IAM) aus.
Wählen Sie Hinzufügen>Rollenzuweisung hinzufügen aus, um die Seite Rollenzuweisung hinzufügen zu öffnen.
Weisen Sie die folgende Rolle zu. Ausführliche Informationen finden Sie unter Zuweisen von Azure-Rollen über das Azure-Portal.
Einstellung Wert Rolle CosmosRestoreOperator Zugriff zuweisen zu Benutzer, Gruppe oder Dienstprinzipal Member <Benutzer Ihrer Wahl> Wiederholen Sie Schritt 4 zum Zuweisen der Rolle Cosmos DB-Operator, um die Schreibberechtigung („write“) zu erteilen. Wenn Sie diese Rolle im Azure-Portal zuweisen, wird die Berechtigung zum Wiederherstellen für das gesamte Abonnement erteilt.
Berechtigungsbereiche
`Scope` | Beispiel |
---|---|
Abonnement | /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e |
Resource group | /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/Example-cosmosdb-rg |
Wiederherstellbare CosmosDB-Kontoressource | /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.DocumentDB/locations/West US/restorableDatabaseAccounts/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e |
Die wiederherstellbare Kontoressource kann aus der Ausgabe des Befehls az cosmosdb restorable-database-account list --account-name <accountname>
(in der Befehlszeilenschnittstelle) oder des Cmdlets Get-AzCosmosDBRestorableDatabaseAccount -DatabaseAccountName <accountname>
(in PowerShell) extrahiert werden. Das name-Attribut in der Ausgabe stellt die Instanz-ID (instanceID
) des wiederherstellbaren Kontos dar.
Berechtigungen für das Quellkonto
Die folgenden Berechtigungen sind zum Ausführen der verschiedenen Aktivitäten im Zusammenhang mit der Wiederherstellung für Konten im fortlaufenden Sicherungsmodus erforderlich:
Hinweis
Die Berechtigung kann dem wiederherstellbaren Datenbankkonto im Konto- oder Abonnementbereich zugewiesen werden. Das Zuweisen von Berechtigungen im Ressourcengruppenbereich wird nicht unterstützt.
Berechtigung | Auswirkung | Mindestumfang | Maximaler Bereich |
---|---|---|---|
Microsoft.Resources/deployments/validate/action , Microsoft.Resources/deployments/write |
Diese Berechtigungen sind für die ARM-Vorlagenbereitstellung zum Erstellen des wiederhergestellten Kontos erforderlich. Informationen zum Festlegen dieser Rolle finden Sie unten in der Beispielberechtigung RestorableAction. | Nicht zutreffend | Nicht zutreffend |
Microsoft.DocumentDB/databaseAccounts/write |
Diese Berechtigung ist erforderlich, um ein Konto in einer Ressourcengruppe wiederherstellen zu können. | Die Ressourcengruppe, unter der das wiederhergestellte Konto erstellt wird. | Das Abonnement, unter dem das wiederhergestellte Konto erstellt wird. |
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restore/action Sie können die Ressourcengruppe nicht als Berechtigungsbereich auswählen. |
Diese Berechtigung ist für den Bereich des wiederherstellbaren Datenbankquellkontos erforderlich, damit Wiederherstellungsaktionen dafür ausgeführt werden können. | Die RestorableDatabaseAccount-Ressource, die zum wiederherzustellenden Quellkonto gehört. Dieser Wert wird auch durch die Eigenschaft ID der wiederherstellbaren Datenbankkontoressource angegeben. Beispiel für ein wiederherstellbares Konto: /subscriptions/subscriptionId/providers/Microsoft.DocumentDB/locations/regionName/restorableDatabaseAccounts/<guid-instanceid> |
Das Abonnement, das das wiederherstellbare Datenbankkonto enthält. |
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read Sie können die Ressourcengruppe nicht als Berechtigungsbereich auswählen. |
Diese Berechtigung ist für den Bereich des wiederherstellbaren Datenbankquellkontos erforderlich, um die wiederherstellbaren Datenbankkonten auflisten zu können. | Die RestorableDatabaseAccount-Ressource, die zum wiederherzustellenden Quellkonto gehört. Dieser Wert wird auch durch die Eigenschaft ID der wiederherstellbaren Datenbankkontoressource angegeben. Beispiel für ein wiederherstellbares Konto: /subscriptions/subscriptionId/providers/Microsoft.DocumentDB/locations/regionName/restorableDatabaseAccounts/<guid-instanceid> |
Das Abonnement, das das wiederherstellbare Datenbankkonto enthält. |
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read Sie können die Ressourcengruppe nicht als Berechtigungsbereich auswählen. |
Diese Berechtigung ist für den Bereich des wiederherstellbaren Quellkontos erforderlich, um das Lesen von wiederherstellbaren Ressourcen wie der Liste der Datenbanken und Container für ein wiederherstellbares Konto zuzulassen. | Die RestorableDatabaseAccount-Ressource, die zum wiederherzustellenden Quellkonto gehört. Dieser Wert wird auch durch die Eigenschaft ID der wiederherstellbaren Datenbankkontoressource angegeben. Beispiel für ein wiederherstellbares Konto: /subscriptions/subscriptionId/providers/Microsoft.DocumentDB/locations/regionName/restorableDatabaseAccounts/<guid-instanceid> |
Das Abonnement, das das wiederherstellbare Datenbankkonto enthält. |
Berechtigungen für das Zielkonto
Die folgenden Berechtigungen sind zum Ausführen der verschiedenen Aktivitäten im Zusammenhang mit der Wiederherstellung für Konten im fortlaufenden Sicherungsmodus erforderlich:
Berechtigung | Auswirkung |
---|---|
Microsoft.Resources/deployments/validate/action , Microsoft.Resources/deployments/write |
Diese Berechtigungen sind für die ARM-Vorlagenbereitstellung zum Erstellen des wiederhergestellten Kontos erforderlich. Informationen zum Festlegen dieser Rolle finden Sie unten in der Beispielberechtigung RestorableAction. |
Microsoft.DocumentDB/databaseAccounts/write |
Diese Berechtigung ist erforderlich, um ein Konto in einer Ressourcengruppe wiederherstellen zu können. |
Azure CLI-Rollenzuweisungsszenarien für die Wiederherstellung in unterschiedlichen Bereichen
Rollen mit Berechtigungen können verschiedenen Bereichen zugewiesen werden, um eine präzise Kontrolle darüber zu erhalten, wer den Wiederherstellungsvorgang innerhalb eines Abonnements oder eines bestimmten Kontos ausführen kann.
Zuweisen der Fähigkeit zur Wiederherstellung von einem beliebigen wiederherstellbaren Konto in einem Abonnement
- Zuweisen der integrierten Rolle
CosmosRestoreOperator
zur spezifischen Abonnementebene
az role assignment create --role "CosmosRestoreOperator" --assignee <email> --scope /subscriptions/<subscriptionId>
Zuweisen der Fähigkeit zur Wiederherstellung von einem bestimmten Konto
- Weisen Sie einem Benutzer eine Schreibaktion für die entsprechende Ressourcengruppe zu. Diese Aktion ist erforderlich, um ein neues Konto in der Ressourcengruppe erstellen zu können.
- Weisen Sie dem spezifischen wiederherstellbaren Datenbankkonto, das wiederhergestellt werden muss, die integrierte Rolle
CosmosRestoreOperator
zu. Im folgenden Befehl wird der Bereich fürRestorableDatabaseAccount
aus derID
-Eigenschaft des Ausführungsergebnisses vonaz cosmosdb restorable-database-account list
(bei Verwendung der CLI) oderGet-AzCosmosDBRestorableDatabaseAccount
(bei Verwendung von PowerShell) extrahiert
az role assignment create --role "CosmosRestoreOperator" --assignee <email> --scope <RestorableDatabaseAccount>
Zuweisen der Fähigkeit zur Wiederherstellung von einem beliebigen Quellkonto in einer Ressourcengruppe
Dieser Vorgang wird derzeit nicht unterstützt.
Erstellen von benutzerdefinierten Rollen für Wiederherstellungsaktionen mit der CLI
Abonnementbesitzer*innen können die Berechtigung zum Wiederherstellen für jede andere Microsoft Entra-Identität bereitstellen. Die Berechtigung zum Wiederherstellen basiert auf der Aktion Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restore/action
, und sie sollte in die entsprechende „restore“-Berechtigung eingeschlossen werden. Es gibt eine integrierte Rolle namens CosmosRestoreOperator, die diese Rolle enthält. Sie können die Berechtigung entweder mithilfe dieser integrierten Rolle zuweisen oder eine benutzerdefinierte Rolle erstellen.
Die folgende Rolle „RestorableAction“ stellt eine benutzerdefinierte Rolle dar. Sie müssen diese Rolle explizit erstellen. Mit der folgenden JSON-Vorlage wird eine benutzerdefinierte Rolle RestorableAction mit der Berechtigung zum Wiederherstellen erstellt:
{
"assignableScopes": [
"/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f"
],
"description": "Can do a restore request for any Azure Cosmos DB database account with continuous backup",
"permissions": [
{
"actions": [
"Microsoft.Resources/deployments/validate/action",
"Microsoft.DocumentDB/databaseAccounts/write",
"Microsoft.Resources/deployments/write",
"Microsoft.DocumentDB/locations/restorableDatabaseAccounts/restore/action",
"Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read",
"Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read"
],
"dataActions": [],
"notActions": [],
"notDataActions": []
}
],
"Name": "RestorableAction",
"roleType": "CustomRole"
}
Verwenden Sie als Nächstes den folgenden Vorlagenbereitstellungsbefehl, um mithilfe der ARM-Vorlage eine Rolle mit der Berechtigung zum Wiederherstellen zu erstellen:
az role definition create --role-definition <JSON_Role_Definition_Path>
Nächste Schritte
- Bereitstellen der fortlaufende Sicherung über das Azure-Portal, PowerShell, die Befehlszeilenschnittstelle oder Azure Resource Manager.
- Abrufen des letzten wiederherstellbaren Zeitstempels für SQL- und MongoDB-Konten.
- Wiederherstellen eines Kontos über das Azure-Portal, PowerShell, die Befehlszeilenschnittstelle oder den Azure Resource Manager.
- Migrieren eines Konto von der regelmäßigen Sicherung zur fortlaufenden Sicherung
- Ressourcenmodell des fortlaufenden Sicherungsmodus