Einem Pod in einem AKS-Cluster ermöglichen, sicher auf Azure Key Vault zuzugreifen, ohne gespeicherte Anmeldeinformationen wie Client-Secrets oder Zertifikate zu verwenden.
→Azure AD Workload Identity verwenden. Eine benutzerseitig zugewiesene verwaltete Identität erstellen, eine föderierte Identitätsanmeldeinformation zwischen dem K8s-Dienstkonto und der verwalteten Identität einrichten und der verwalteten Identität Zugriff auf Key Vault gewähren.
Warum: Workload Identity verwendet OIDC-Föderation, um ein Kubernetes-Token gegen ein Azure AD-Token auszutauschen, wodurch die Notwendigkeit, Secrets im Cluster zu speichern, zu verwalten oder zu rotieren, vollständig entfällt.
Referenz↗
Ein Azure Key Vault sichern, um nur den Zugriff von bestimmten VNets zu erlauben, alle Operationen zu protokollieren und vor versehentlichem Löschen kritischer Schlüssel zu schützen.
→Die Key Vault-Firewall so konfigurieren, dass der Zugriff von „Privater Endpunkt und ausgewählte Netzwerke“ erlaubt ist. Diagnoselogging an einen Log Analytics-Arbeitsbereich aktivieren. Sowohl Soft Delete als auch Purge Protection aktivieren.
Warum: Soft Delete ermöglicht die Wiederherstellung nach versehentlichem Löschen, aber Purge Protection verhindert, dass selbst ein privilegierter Benutzer den Tresor oder dessen Inhalt während der Aufbewahrungsfrist dauerhaft löscht. Diese Kombination ist entscheidend für den Schutz von TDE-Schlüsseln.
Ein Azure App Service muss sich bei einer Azure SQL-Datenbank authentifizieren, um Daten abzurufen, ohne Verbindungszeichenfolgen-Passwörter in der Konfiguration zu speichern.
→Eine systemseitig zugewiesene verwaltete Identität im App Service aktivieren. In Azure SQL einen enthaltenen Benutzer erstellen, der dem Namen der verwalteten Identität des App Service zugeordnet ist, und ihm die erforderlichen Datenbankrollen (z. B. db_datareader) gewähren.
Warum: Managed Identity stellt eine Identität für die Azure-Ressource selbst in Azure AD bereit. Azure übernimmt die automatische Erstellung und Rotation von Anmeldeinformationen, wodurch gespeicherte Secrets eliminiert werden, was eine wichtige bewährte Sicherheitspraxis ist.
Verwaltete Azure VM-Datenträger im Ruhezustand mit einem Schlüssel verschlüsseln, den Ihre Organisation im Azure Key Vault kontrolliert.
→Eine Disk Encryption Set-Ressource erstellen. Diese so konfigurieren, dass sie einen kundenverwalteten Schlüssel (CMK) aus Ihrem Azure Key Vault verwendet. Das Disk Encryption Set den verwalteten Datenträgern der VM zuweisen.
Warum: Dies ist Server-Side Encryption (SSE) mit CMK, das Daten in der Speicherinfrastruktur verschlüsselt. Es ist einfacher als Azure Disk Encryption (ADE), das BitLocker/dm-crypt verwendet, um Daten innerhalb des Gast-OS zu verschlüsseln, und wird im Allgemeinen für OS- und Daten-Datenträger zusammen verwendet.
Sicherstellen, dass in Azure Container Registry (ACR) gespeicherte Container-Images auf Schwachstellen gescannt werden, bevor sie bereitgestellt werden.
→Microsoft Defender for Containers aktivieren. Dies scannt Bilder in ACR automatisch, wenn sie gepusht, wenn sie gepullt werden, und fortlaufend nach neu entdeckten Schwachstellen.
Warum: Diese „Shift-Left“-Sicherheitspraxis identifiziert Schwachstellen frühzeitig in der CI/CD-Pipeline. Defender for Containers bietet diese Scan-Funktion nativ innerhalb des Azure-Ökosystems.
Potenzielle SQL-Injection-Angriffe und anomale Zugriffsmuster auf einer Azure SQL-Datenbank erkennen und Warnmeldungen erhalten.
→Microsoft Defender for SQL auf dem logischen SQL-Server aktivieren. Dies bietet erweiterten Bedrohungsschutz und Schwachstellenbewertung.
Warum: Defender for SQL ist der dedizierte Workload-Schutzplan, der Verhaltensanalysen und maschinelles Lernen verwendet, um Bedrohungen wie SQL-Injection, Brute-Force-Angriffe und ungewöhnlichen Datenzugriff zu erkennen, die für netzwerkbasierte Tools nicht sichtbar sind.
Ein Speicherkonto auf ein bestimmtes VNet beschränken, aber dennoch vertrauenswürdigen Microsoft-Diensten wie Azure Backup den Zugriff erlauben.
→In den Netzwerkeinstellungen des Speicherkontos „Ausgewählte virtuelle Netzwerke und IP-Adressen aktiviert“ auswählen. Das erforderliche VNet/Subnetz hinzufügen. Anschließend das Kontrollkästchen „Vertrauenswürdigen Microsoft-Diensten den Zugriff auf dieses Speicherkonto erlauben“ aktivieren.
Warum: Die Ausnahme für vertrauenswürdige Dienste schafft einen sicheren Pfad für bestimmte Microsoft-Dienste, um die VNet-Firewall-Regeln zu umgehen. Ohne sie würden Dienste, die im Auftrag des Benutzers agieren (wie Backup oder Portal), blockiert.
Spezifische sensible Datenfelder (z. B. Kreditkartennummern) in einer Azure SQL-Datenbank schützen, selbst vor privilegierten Datenbankadministratoren (DBAs).
→Always Encrypted verwenden. Der Treiber der Clientanwendung verschlüsselt die Daten transparent, bevor sie an die Datenbank gesendet werden, und die Verschlüsselungsschlüssel werden dem Datenbank-Engine niemals preisgegeben.
Warum: Transparent Data Encryption (TDE) verschlüsselt die gesamte Datenbank im Ruhezustand (auf der Festplatte), aber ein DBA mit Zugriff kann die Daten immer noch sehen. Always Encrypted bietet clientseitige Verschlüsselung, die diejenigen, die die Daten verwalten (DBAs), von denen trennt, die sie sehen können.
Hochsensible Daten auf einer Azure VM verarbeiten und sicherstellen, dass sie auch im Speicher vor dem Hypervisor und Cloud-Betreibern verschlüsselt und geschützt bleiben.
→Eine Azure Confidential VM bereitstellen. Diese VMs verwenden hardwarebasierte Trusted Execution Environments (TEEs) wie AMD SEV-SNP, um einen isolierten, verschlüsselten Speicherbereich zu erstellen.
Warum: Standard-VM-Verschlüsselung (wie ADE oder SSE) schützt Daten im Ruhezustand. Confidential Computing ist die einzige Technologie, die Daten *während der Nutzung* im Speicher schützt und das höchste Maß an Datenprivatsphäre und Isolation in der Cloud bietet.
Ein App Service muss ein Secret aus Key Vault als Anwendungseinstellung verwenden, ohne den Anwendungscode zur Nutzung des Key Vault SDK zu ändern.
→Verwaltete Identität im App Service aktivieren und ihr „Get“-Berechtigungen für Secrets in Key Vault gewähren. In der App Service-Konfiguration eine Anwendungseinstellung mit dem Wert im Format einer Key Vault-Referenz erstellen: `@Microsoft.KeyVault(SecretUri=...)`.
Warum: Diese Funktion ermöglicht der App Service-Plattform, den Secret-Wert zur Laufzeit unter Verwendung der verwalteten Identität aufzulösen. Der Anwendungscode liest einfach eine Standard-Umgebungsvariable, wodurch die Key Vault-Interaktion abstrahiert wird.
Compliance-bezogene Daten in Azure Blob Storage in einem WORM (Write-Once, Read-Many)-Zustand für eine Aufbewahrungsfrist von 7 Jahren speichern.
→Auf dem Speichercontainer eine Unveränderlichkeitsrichtlinie konfigurieren. Eine zeitbasierte Aufbewahrungsrichtlinie auf 7 Jahre einstellen und die Richtlinie sperren. Sobald gesperrt, können die Daten von niemandem mehr geändert oder gelöscht werden, bis die Aufbewahrungsfrist abläuft.
Warum: Diese Funktion wurde speziell entwickelt, um regulatorische Compliance-Anforderungen (z. B. SEC 17a-4) zu erfüllen. Das Sperren der Richtlinie ist der entscheidende Schritt, der sie wirklich unveränderlich macht.
In einer Multi-Tenant-Anwendung, die eine einzige Azure SQL-Datenbank verwendet, sicherstellen, dass Benutzer eines Tenants nur Daten sehen können, die ihrem eigenen Tenant gehören.
→Row-Level Security (RLS) implementieren. Eine Sicherheitsrichtlinie mit einer Prädikatfunktion erstellen, die Zeilen basierend auf der Tenant-ID des Benutzers filtert, die im Sitzungskontext oder in einer Benutzer-Lookup-Tabelle gespeichert ist.
Warum: RLS erzwingt Zugriffslogik direkt im Datenbank-Engine. Dies ist sicherer und zuverlässiger als die Implementierung von Filterung in der Anwendungsebene, da es nicht umgangen werden kann und für den Anwendungscode transparent ist.
Generation 2 VMs vor Bootkits und Rootkits schützen, indem die Integrität der gesamten Bootkette von UEFI bis zum OS-Kernel sichergestellt wird.
→Die VM mit aktiviertem Trusted Launch bereitstellen. Dies aktiviert Secure Boot, das die Signatur aller Boot-Komponenten validiert, und ein virtuelles Trusted Platform Module (vTPM) für gemessenes Booten und Attestierung.
Warum: Trusted Launch bekämpft hochentwickelte, Low-Level-Malware, die traditionelle Sicherheitskontrollen auf OS-Ebene untergraben kann. Es etabliert eine Hardware-Vertrauensbasis für die VM.