Translated ['src/pentesting-cloud/azure-security/az-services/az-sql.md']

This commit is contained in:
Translator
2025-03-21 09:03:58 +00:00
parent ec4a075ea9
commit c6693a2211

View File

@@ -11,7 +11,7 @@ Azure SQL besteht aus vier Hauptangeboten:
1. **Azure SQL Server**: Ein Server wird für die **Bereitstellung und Verwaltung** von SQL Server-Datenbanken benötigt.
2. **Azure SQL-Datenbank**: Dies ist ein **vollständig verwalteter Datenbankdienst**, der es Ihnen ermöglicht, einzelne Datenbanken in der Azure-Cloud zu hosten.
3. **Azure SQL Managed Instance**: Dies ist für größere, gesamte SQL Server-Instanz-Umsetzungen.
4. **Azure SQL Server auf Azure VMs**: Dies ist am besten für Architekturen geeignet, in denen Sie **Kontrolle über das Betriebssystem** und die SQL Server-Instanz haben möchten.
4. **Azure SQL Server auf Azure-VMs**: Dies ist am besten für Architekturen geeignet, bei denen Sie **Kontrolle über das Betriebssystem** und die SQL Server-Instanz wünschen.
### SQL Server-Sicherheitsfunktionen
@@ -37,7 +37,7 @@ Beachten Sie, dass, wenn eine SQL-Authentifizierung erlaubt ist, ein Administrat
**Verwaltete Identitäten:**
- Es ist möglich, system- und benutzerverwaltete MIs zuzuweisen.
- Wird verwendet, um auf den Verschlüsselungsschlüssel (wenn ein CMEK verwendet wird) und andere Dienste aus den Datenbanken zuzugreifen.
- Wird verwendet, um auf den Verschlüsselungsschlüssel zuzugreifen (wenn ein CMEK verwendet wird) und auf andere Dienste von den Datenbanken.
- Für einige Beispiele der Azure-Dienste, die von der Datenbank aus zugegriffen werden können, siehe [diese Seite der Dokumentation](https://learn.microsoft.com/en-us/sql/t-sql/statements/create-external-data-source-transact-sql)
- Wenn mehr als eine UMI zugewiesen ist, ist es möglich, die Standard-UMI anzugeben, die verwendet werden soll.
- Es ist möglich, eine föderierte Client-Identität für den Zugriff über Mandanten hinweg zu konfigurieren.
@@ -76,18 +76,18 @@ GO
- Die Backup-Frequenz wird in den Aufbewahrungsrichtlinien verwaltet.
**Gelöschte Datenbanken:**
- Es ist möglich, DBs, die aus vorhandenen Backups gelöscht wurden, wiederherzustellen.
- Es ist möglich, DBs, die aus bestehenden Backups gelöscht wurden, wiederherzustellen.
## Azure SQL-Datenbank
**Azure SQL-Datenbank** ist eine **vollständig verwaltete Datenbankplattform als Dienst (PaaS)**, die skalierbare und sichere relationale Datenbanklösungen bietet. Sie basiert auf den neuesten SQL Server-Technologien und beseitigt die Notwendigkeit der Infrastrukturverwaltung, was sie zu einer beliebten Wahl für cloudbasierte Anwendungen macht.
**Azure SQL-Datenbank** ist eine **vollständig verwaltete Datenbankplattform als Dienst (PaaS)**, die skalierbare und sichere relationale Datenbanklösungen bietet. Sie basiert auf den neuesten SQL Server-Technologien und beseitigt die Notwendigkeit r Infrastrukturmanagement, was sie zu einer beliebten Wahl für cloudbasierte Anwendungen macht.
Um eine SQL-Datenbank zu erstellen, muss der SQL-Server angegeben werden, auf dem sie gehostet wird.
### Sicherheitsfunktionen der SQL-Datenbank
### Sicherheitsmerkmale der SQL-Datenbank
- **Immer auf dem neuesten Stand**: Läuft auf der neuesten stabilen Version von SQL Server und erhält automatisch neue Funktionen und Patches.
- **Vererbte Sicherheitsfunktionen von SQL Server:**
- **Vererbte Sicherheitsmerkmale von SQL Server:**
- Authentifizierung (SQL und/oder Entra ID)
- Zugewiesene verwaltete Identitäten
- Netzwerkbeschränkungen
@@ -95,28 +95,28 @@ Um eine SQL-Datenbank zu erstellen, muss der SQL-Server angegeben werden, auf de
- Backups
-
- **Datenredundanz:** Optionen sind lokal, zonen-, geo- oder geo-zonenredundant.
- **Ledger:** Es überprüft kryptografisch die Integrität der Daten und stellt sicher, dass Manipulationen erkannt werden. Nützlich für Finanz-, Medizin- und jede Organisation, die mit sensiblen Daten umgeht.
- **Ledger:** Es verifiziert kryptografisch die Integrität der Daten und stellt sicher, dass jede Manipulation erkannt wird. Nützlich für Finanz-, Medizin- und jede Organisation, die mit sensiblen Daten umgeht.
Eine SQL-Datenbank könnte Teil eines **Elastic Pools** sein. Elastic Pools sind eine kosteneffiziente Lösung zur Verwaltung mehrerer Datenbanken, indem konfigurierbare Rechen- (eDTUs) und Speicherressourcen unter ihnen geteilt werden, wobei die Preisgestaltung ausschließlich auf den zugewiesenen Ressourcen und nicht auf der Anzahl der Datenbanken basiert.
#### Azure SQL-Spaltenebene-Sicherheit (Maskierung) & Zeilenebene-Sicherheit
**Die dynamische** Datenmaskierung von Azure SQL ist eine Funktion, die **sensible Informationen schützt, indem sie sie** vor unbefugten Benutzern verbirgt. Anstatt die tatsächlichen Daten zu ändern, maskiert sie dynamisch die angezeigten Daten, sodass sensible Details wie Kreditkartennummern unkenntlich gemacht werden.
**Die dynamische** Datenmaskierung von Azure SQL ist eine Funktion, die **sensible Informationen schützt, indem sie sie** vor unbefugten Benutzern verbirgt. Anstatt die tatsächlichen Daten zu ändern, maskiert sie dynamisch die angezeigten Daten, sodass sensible Details wie Kreditkartennummern verborgen bleiben.
Die **dynamische Datenmaskierung** betrifft alle Benutzer, außer denjenigen, die nicht maskiert sind (diese Benutzer müssen angegeben werden) und Administratoren. Es gibt die Konfigurationsoption, die angibt, welche SQL-Benutzer von der dynamischen Datenmaskierung ausgenommen sind, wobei **Administratoren immer ausgeschlossen** sind.
Die **dynamische Datenmaskierung** betrifft alle Benutzer, außer denjenigen, die nicht maskiert sind (diese Benutzer müssen angegeben werden) und Administratoren. Sie hat die Konfigurationsoption, die angibt, welche SQL-Benutzer von der dynamischen Datenmaskierung ausgenommen sind, wobei **Administratoren immer ausgeschlossen** sind.
**Azure SQL-Zeilenebene-Sicherheit (RLS)** ist eine Funktion, die **steuert, welche Zeilen ein Benutzer sehen oder ändern kann**, sodass jeder Benutzer nur die für ihn relevanten Daten sieht. Durch die Erstellung von Sicherheitsrichtlinien mit Filter- oder Blockprädikaten können Organisationen einen feingranularen Zugriff auf Datenbankebene durchsetzen.
**Azure SQL-Zeilenebene-Sicherheit (RLS)** ist eine Funktion, die **steuert, welche Zeilen ein Benutzer anzeigen oder ändern kann**, sodass jeder Benutzer nur die für ihn relevanten Daten sieht. Durch die Erstellung von Sicherheitsrichtlinien mit Filter- oder Blockprädikaten können Organisationen einen feingranularen Zugriff auf Datenbankebene durchsetzen.
### Azure SQL Managed Instance
**Azure SQL Managed Instances** sind für größere, gesamte SQL Server-Instanz-Scoped-Bereitstellungen. Sie bieten nahezu 100% Kompatibilität mit dem neuesten SQL Server vor Ort (Enterprise Edition) Datenbank-Engine, die eine native Implementierung des virtuellen Netzwerks (VNet) bietet, die häufige Sicherheitsbedenken anspricht, und ein Geschäftsmodell, das für lokale SQL Server-Kunden vorteilhaft ist.
**Azure SQL Managed Instances** sind für größere, gesamte SQL Server-Instanz-Scoped-Bereitstellungen. Sie bietet nahezu 100% Kompatibilität mit dem neuesten SQL Server vor Ort (Enterprise Edition) Datenbank-Engine, die eine native Implementierung des virtuellen Netzwerks (VNet) bietet, die häufige Sicherheitsbedenken anspricht, und ein Geschäftsmodell, das für lokale SQL Server-Kunden vorteilhaft ist.
### Azure SQL-VMs
**Azure SQL-VMs** ermöglichen es, **das Betriebssystem** und die SQL Server-Instanz zu **steuern**, da eine VM im VM-Dienst gestartet wird, der den SQL-Server ausführt.
**Azure SQL-VMs** ermöglichen es, **das Betriebssystem** und die SQL Server-Instanz zu **steuern**, da eine VM im VM-Dienst, der den SQL-Server ausführt, erstellt wird.
Wenn eine SQL-VM erstellt wird, ist es möglich, **alle Einstellungen der VM auszuwählen** (wie in der VM-Lektion gezeigt), die den SQL-Server hosten wird.
- Das bedeutet, dass die VM auf einige VNet(s) zugreifen wird, möglicherweise **verwaltete Identitäten angehängt** hat, Datei-Share gemountet haben könnte… was ein **Pivoting vom SQL** zur VM super interessant macht.
- Das bedeutet, dass die VM auf einige VNet(s) zugreifen wird, möglicherweise **verwaltete Identitäten** angehängt hat, Datei-Share gemountet haben könnte… was ein **Pivoting vom SQL** zur VM super interessant macht.
- Darüber hinaus ist es möglich, eine App-ID und ein Geheimnis zu konfigurieren, um **dem SQL den Zugriff auf einen bestimmten Schlüsselbund zu ermöglichen**, der sensible Informationen enthalten könnte.
Es ist auch möglich, Dinge wie **automatische SQL-Updates**, **automatische Backups**, **Entra ID-Authentifizierung** und die meisten Funktionen der anderen SQL-Dienste zu konfigurieren.
@@ -209,7 +209,7 @@ az rest --method get \
# Get DataMaskingPolicies of a database
az rest --method get \
--uri "https://management.azure.com/subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.Sql/servers/getstorageserver/databases/masktest/dataMaskingPolicies/Default?api-version=2021-11-01"
--uri "https://management.azure.com/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Sql/servers/<serverName>/databases/<databaseName>/dataMaskingPolicies/Default?api-version=2021-11-01"
az rest --method get \
--uri "https://management.azure.com/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.Sql/servers/<serverName>/databases/<databaseName>/dataMaskingPolicies/Default/rules?api-version=2021-11-01"