Workloads OU — Anwendungskonto - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Workloads OU — Anwendungskonto

Beeinflussen Sie die future der AWS Security Reference Architecture (AWS SRA), indem Sie an einer kurzen Umfrage teilnehmen.

Das folgende Diagramm zeigt die AWS Sicherheitsdienste, die im Anwendungskonto konfiguriert sind (zusammen mit der Anwendung selbst).

Sicherheitsdienste für das Anwendungskonto.

Das Anwendungskonto hostet die primäre Infrastruktur und die Dienste für die Ausführung und Wartung einer Unternehmensanwendung. Das Anwendungskonto und die Organisationseinheit Workloads dienen einigen primären Sicherheitszielen. Zunächst erstellen Sie für jede Anwendung ein separates Konto, um Grenzen und Kontrollen zwischen Workloads bereitzustellen und so Probleme mit der Vermischung von Rollen, Berechtigungen, Daten und Verschlüsselungsschlüsseln zu vermeiden. Sie möchten einen separaten Kontencontainer bereitstellen, in dem dem Anwendungsteam umfassende Rechte zur Verwaltung seiner eigenen Infrastruktur eingeräumt werden können, ohne andere zu beeinträchtigen. Als Nächstes fügen Sie eine Schutzebene hinzu, indem Sie dem Sicherheitsteam einen Mechanismus zur Überwachung und Erfassung von Sicherheitsdaten bereitstellen. Verwenden Sie einen Organisationsplan und lokale Bereitstellungen von Kontosicherheitsdiensten (Amazon GuardDuty, AWS Config, AWS Security Hub CSPM, Amazon EventBridge, IAM Access Analyzer), die vom Sicherheitsteam konfiguriert und überwacht werden. Schließlich ermöglichen Sie es Ihrem Unternehmen, Kontrollen zentral festzulegen. Sie passen das Anwendungskonto an die umfassendere Sicherheitsstruktur an, indem Sie es zu einem Mitglied der Workloads-Organisationseinheit machen, über die es die entsprechenden Serviceberechtigungen, Einschränkungen und Schutzmaßnahmen erbt.

Designüberlegung

In Ihrer Organisation haben Sie wahrscheinlich mehr als eine Geschäftsanwendung. Die Workloads OU ist für die Unterbringung der meisten Ihrer geschäftsspezifischen Workloads vorgesehen, einschließlich Produktions- und Nichtproduktionsumgebungen. Bei diesen Workloads kann es sich um eine Mischung aus kommerziellen off-the-shelf (COTS) Anwendungen und Ihren eigenen, intern entwickelten kundenspezifischen Anwendungen und Datendiensten handeln. Es gibt nur wenige Muster für die Organisation verschiedener Geschäftsanwendungen zusammen mit ihren Entwicklungsumgebungen. Ein Muster besteht darin, auf der OUs Grundlage Ihrer Entwicklungsumgebung mehrere untergeordnete Elemente zu haben, z. B. Produktion, Staging, Test und Entwicklung, und separate untergeordnete Elemente AWS-Konten unter denen zu verwenden OUs , die sich auf verschiedene Anwendungen beziehen. Ein weiteres gängiges Muster besteht darin, für jede Anwendung separate untergeordnete OUs Elemente zu verwenden und dann separate untergeordnete Elemente AWS-Konten für einzelne Entwicklungsumgebungen zu verwenden. Die genaue Organisationseinheit und Kontostruktur hängt von Ihrem Anwendungsdesign und den Teams ab, die diese Anwendungen verwalten. Denken Sie darüber nach, welche Sicherheitskontrollen Sie durchsetzen möchten, unabhängig davon, ob sie umgebungs- oder anwendungsspezifisch sind, da es einfacher ist, diese Kontrollen sofort zu implementieren. SCPs OUs Weitere Überlegungen zur auslastungsorientierten Organisation finden Sie OUs im OUs Abschnitt „Anwendungen“ des AWS Whitepapers Organizing your environment using multiple accounts. AWS

Anwendung VPC

Die Virtual Private Cloud (VPC) im Anwendungskonto benötigt sowohl eingehenden Zugriff (für die einfachen Webdienste, die Sie modellieren) als auch ausgehenden Zugriff (für Anwendungsanforderungen oder AWS-Service -bedürfnisse). Standardmäßig sind Ressourcen innerhalb einer VPC untereinander routbar. Es gibt zwei private Subnetze: eines zum Hosten der EC2 Instances (Anwendungsschicht) und das andere für Amazon Aurora (Datenbankschicht). Die Netzwerksegmentierung zwischen verschiedenen Ebenen, z. B. der Anwendungs- und Datenbankebene, erfolgt über VPC-Sicherheitsgruppen, die den Datenverkehr auf Instanzebene einschränken. Aus Gründen der Ausfallsicherheit erstreckt sich der Workload über zwei oder mehr Availability Zones und verwendet zwei Subnetze pro Zone.

Designüberlegung

Sie können Traffic Mirroring verwenden, um Netzwerkdatenverkehr von einer elastic network interface von EC2 Instances zu kopieren. Anschließend können Sie den Datenverkehr zur Inhaltsinspektion, Bedrohungsüberwachung oder Fehlerbehebung an out-of-band Sicherheits- und Monitoring-Appliances weiterleiten. Möglicherweise möchten Sie beispielsweise den Traffic überwachen, der Ihre VPC verlässt, oder den Traffic, dessen Quelle sich außerhalb Ihrer VPC befindet. In diesem Fall spiegeln Sie den gesamten Datenverkehr mit Ausnahme des Datenverkehrs, der innerhalb Ihrer VPC fließt, und senden ihn an eine einzige Monitoring-Appliance. Amazon VPC-Flow-Logs erfassen keinen gespiegelten Datenverkehr; sie erfassen im Allgemeinen nur Informationen aus Paket-Headern. Traffic Mirroring bietet tiefere Einblicke in den Netzwerkverkehr, indem es Ihnen ermöglicht, den tatsächlichen Datenverkehrsinhalt, einschließlich der Nutzlast, zu analysieren. Aktivieren Sie Traffic Mirroring nur für die elastic network interface von EC2 Instances, die möglicherweise als Teil sensibler Workloads betrieben werden oder für die Sie im Falle eines Problems voraussichtlich detaillierte Diagnosen benötigen.

VPC-Endpunkte

VPC-Endpunkte bieten eine weitere Ebene der Sicherheitskontrolle sowie Skalierbarkeit und Zuverlässigkeit. Verwenden Sie diese, um Ihre Anwendungs-VPC mit anderen AWS-Services zu verbinden. (Im Anwendungskonto verwendet die AWS SRA VPC-Endpunkte für AWS KMS AWS Systems Manager, und Amazon S3.) Endpunkte sind virtuelle Geräte. Es handelt sich bei ihnen um horizontal skalierte, redundante und hochverfügbare VPC-Komponenten. Sie ermöglichen die Kommunikation zwischen Instances in Ihrer VPC und Services ohne Verfügbarkeitsrisiken oder Bandbreitenbeschränkungen für den Netzwerkverkehr. Sie können einen VPC-Endpunkt verwenden, um Ihre VPC privat mit unterstützten AWS-Services und VPC-Endpunktdiensten zu verbinden, die bereitgestellt werden, AWS PrivateLink ohne dass ein Internet-Gateway, ein NAT-Gerät, eine VPN-Verbindung oder eine Verbindung erforderlich ist. AWS Direct Connect Instances in Ihrer VPC benötigen keine öffentlichen IP-Adressen, um mit anderen AWS-Services zu kommunizieren. Der Verkehr zwischen Ihrer VPC und der anderen AWS-Service verlässt das Amazon-Netzwerk nicht.

Ein weiterer Vorteil der Verwendung von VPC-Endpunkten besteht darin, die Konfiguration von Endpunktrichtlinien zu ermöglichen. Eine VPC-Endpunktrichtlinie ist eine IAM-Ressourcenrichtlinie, die Sie einem Endpunkt beim Erstellen oder Ändern des Endpunkts zuordnen. Wenn Sie bei der Erstellung eines Endpunkts keine IAM-Richtlinie AWS anhängen, wird eine Standard-IAM-Richtlinie für Sie angehängt, die vollen Zugriff auf den Service ermöglicht. IAM-Benutzerrichtlinien oder servicespezifische Richtlinien (wie S3-Bucket-Richtlinien) werden durch Endpunktrichtlinien nicht überschrieben. Es handelt sich um eine separate IAM-Richtlinie zur Steuerung des Zugriffs vom Endpunkt auf den angegebenen Dienst. Auf diese Weise wird eine weitere Kontrollebene hinzugefügt, über die AWS Prinzipale mit Ressourcen oder Diensten kommunizieren können.

Amazon EC2

Die EC2Amazon-Instances, aus denen unsere Anwendung besteht, verwenden Version 2 des Instance Metadata Service (IMDSv2). IMDSv2 fügt Schutzmaßnahmen für vier Arten von Sicherheitslücken hinzu, die für den Zugriff auf das IMDS genutzt werden könnten: Firewalls für Website-Anwendungen, offene Reverse-Proxys, Sicherheitslücken bei serverseitiger Anforderungsfälschung (SSRF), offene Layer-3-Firewalls und. NATs Weitere Informationen finden Sie im Blogbeitrag Erweiterter Schutz vor offenen Firewalls, Reverse-Proxys und SSRF-Schwachstellen mit Verbesserungen am Instanz-Metadatendienst. EC2

Verwenden Sie separate VPCs (als Untergruppe der Kontogrenzen), um die Infrastruktur nach Workload-Segmenten zu isolieren. Verwenden Sie Subnetze, um Ihre Anwendungsschichten (z. B. Web, Anwendung und Datenbank) innerhalb einer einzelnen VPC zu isolieren. Verwenden Sie für Ihre Instances private Subnetze, wenn Sie nicht direkt aus dem Internet erreichbar sein sollen. Um die EC2 Amazon-API von Ihrem privaten Subnetz aus aufzurufen, ohne ein Internet-Gateway zu verwenden, verwenden Sie AWS PrivateLink. Beschränken Sie den Zugriff auf Ihre Instances mithilfe von Sicherheitsgruppen. Verwenden Sie VPC Flow Logs, um den Traffic zu überwachen, der Ihre Instances erreicht. Verwenden Sie Session Manager, eine Funktion von AWS Systems Manager, um remote auf Ihre Instances zuzugreifen, anstatt eingehende SSH-Ports zu öffnen und SSH-Schlüssel zu verwalten. Verwenden Sie separate Amazon Elastic Block Store (Amazon EBS) -Volumes für das Betriebssystem und Ihre Daten. Sie können Ihr System so konfigurieren AWS-Konto, dass die Verschlüsselung der neuen EBS-Volumes und Snapshot-Kopien, die Sie erstellen, erzwungen wird. 

Beispiel für eine Implementierung

Die AWS SRA-Codebibliothek bietet eine Beispielimplementierung der standardmäßigen Amazon EBS-Verschlüsselung in Amazon. EC2 Es zeigt, wie Sie die standardmäßige Amazon EBS-Verschlüsselung auf Kontoebene in jedem Unternehmen AWS-Konto und AWS-Region in der Organisation aktivieren können. AWS

AWS Nitro-Enklaven

AWS Nitro Enclaves ist eine EC2 Amazon-Funktion, mit der Sie isolierte Ausführungsumgebungen, sogenannte Enklaven, aus Instances erstellen können. EC2 Enklaven sind separate, gehärtete und stark eingeschränkte virtuelle Maschinen. Die CPU und der Speicher einer einzelnen übergeordneten EC2 Instance sind in isolierte Enklaven partitioniert. In jeder Enklave wird ein unabhängiger Kernel ausgeführt. Enklaven bieten nur sichere lokale Socket-Konnektivität mit ihrer übergeordneten Instanz. Sie verfügen über keinen persistenten Speicher, keinen interaktiven Zugriff oder kein externes Netzwerk. Benutzer können keine SSH-Verbindung zu einer Enklave herstellen, und die Prozesse, Anwendungen oder Benutzer (Root oder Administrator) der übergeordneten Instanz können nicht auf die Daten und Anwendungen in der Enklave zugreifen. Sie können Ihre sensibelsten Daten wie personenbezogene Daten (PII), Daten aus dem Gesundheitswesen, Finanzen und geistigem Eigentum innerhalb von Instanzen schützen. EC2 Nitro Enclaves ermöglicht es Ihnen, sich auf Ihre Anwendung zu konzentrieren, anstatt sich Gedanken über die Integration mit externen Diensten zu machen. Nitro Enclaves beinhaltet eine kryptografische Bescheinigung für Ihre Software, sodass Sie sicher sein können, dass nur autorisierter Code ausgeführt wird, sowie eine Integration mit der, AWS KMS sodass nur Ihre Enklaven auf vertrauliches Material zugreifen können. Dies trägt dazu bei, die Angriffsfläche für Ihre sensibelsten Datenverarbeitungsanwendungen zu reduzieren. Für die Verwendung von Nitro Enclaves fallen keine zusätzlichen Kosten an.

Die kryptografische Bescheinigung ist ein Verfahren, mit dem die Identität einer Enklave nachgewiesen wird. Der Bescheinigungsprozess wird über den Nitro Hypervisor durchgeführt, der ein unterschriebenes Bestätigungsdokument für die Enklave erstellt, um ihre Identität gegenüber einer anderen dritten Partei oder einem anderen Dienst nachzuweisen. Die Bescheinigungsdokumente enthalten wichtige Informationen über die Enklave, wie z. B. den öffentlichen Schlüssel der Enklave, Hashes des Enklave-Images und der Anwendungen und mehr.

Mit AWS Certificate Manager (ACM) für Nitro Enclaves können Sie öffentliche und private Zertifikate verwenden. SSL/TLS certificates with your web applications and web servers running on EC2 instances with Nitro Enclaves. SSL/TLS certificates are used to secure network communications and to establish the identity of websites over the internet and resources on private networks. ACM for Nitro Enclaves removes the time-consuming and error-prone manual process of purchasing, uploading, and renewing SSL/TLS ACM for Nitro Enclaves erstellt sichere private Schlüssel, verteilt das Zertifikat und seinen privaten Schlüssel an Ihre Enklave und verwaltet die Erneuerung von Zertifikaten. Mit ACM for Nitro Enclaves bleibt der private Schlüssel des Zertifikats in der Enklave isoliert, sodass die Instanz und ihre Benutzer nicht darauf zugreifen können. Weitere Informationen finden Sie unter AWS Certificate Manager Nitro Enclaves in der Nitro Enclaves-Dokumentation.

Application Load Balancer

Application Load Balancer verteilen den eingehenden Anwendungsdatenverkehr auf mehrere Ziele, z. B. EC2 Instances, in mehreren Availability Zones. In der AWS SRA sind die Anwendungsinstanzen die Zielgruppe für den Load Balancer. EC2 Die AWS SRA verwendet HTTPS-Listener, um sicherzustellen, dass der Kommunikationskanal verschlüsselt ist. Der Application Load Balancer verwendet ein Serverzertifikat, um die Front-End-Verbindung zu beenden und anschließend Anfragen von Clients zu entschlüsseln, bevor sie an die Ziele gesendet werden.

AWS Certificate Manager (ACM) ist nativ in Application Load Balancers integriert, und der AWS SRA verwendet ACM, um die erforderlichen öffentlichen X.509-Zertifikate (TLS-Server) zu generieren und zu verwalten. Sie können TLS 1.2 und starke Verschlüsselungen für Front-End-Verbindungen mithilfe der Application Load Balancer Balancer-Sicherheitsrichtlinie erzwingen. Weitere Informationen finden Sie im Elastic Load Balancing-Benutzerhandbuch.

Designüberlegungen

AWS Private CA

AWS Private Certificate Authority(AWS Private CA) wird im Anwendungskonto verwendet, um private Zertifikate zu generieren, die mit einem Application Load Balancer verwendet werden können. Es ist ein übliches Szenario, dass Application Load Balancers sichere Inhalte über TLS bereitstellen. Dazu müssen TLS-Zertifikate auf dem Application Load Balancer installiert sein. Für rein interne Anwendungen können private TLS-Zertifikate den sicheren Kanal bereitstellen.

In der AWS SRA AWS Private CA wird es im Security Tooling-Konto gehostet und über das Anwendungskonto gemeinsam genutzt. AWS RAM Auf diese Weise können Entwickler in einem Anwendungskonto ein Zertifikat von einer gemeinsamen privaten Zertifizierungsstelle anfordern. Durch die gemeinsame Nutzung CAs innerhalb Ihrer Organisation oder zwischen verschiedenen AWS-Konten Bereichen können Sie die Kosten und die Komplexität der Erstellung und Verwaltung von Duplikaten CAs in allen Ihren Systemen reduzieren AWS-Konten. Wenn Sie ACM verwenden, um private Zertifikate von einer gemeinsamen Zertifizierungsstelle auszustellen, wird das Zertifikat lokal im anfragenden Konto generiert, und ACM bietet die vollständige Lebenszyklusverwaltung und Verlängerung.

Amazon Inspector

Die AWS SRA verwendet Amazon Inspector, um EC2 Instances und Container-Images, die sich in der Amazon Elastic Container Registry (Amazon ECR) befinden, automatisch zu erkennen und auf Softwareschwachstellen und unbeabsichtigte Netzwerkbedrohungen hin zu scannen.

Amazon Inspector wird dem Anwendungskonto zugeordnet, da es Schwachstellen-Management-Services für EC2 Instances in diesem Konto bereitstellt. Darüber hinaus meldet Amazon Inspector unerwünschte Netzwerkpfade zu und von EC2 Instances.

Amazon Inspector in Mitgliedskonten wird zentral vom delegierten Administratorkonto verwaltet. In der AWS SRA ist das Security Tooling-Konto das delegierte Administratorkonto. Das delegierte Administratorkonto kann Ergebnisdaten und bestimmte Einstellungen für Mitglieder der Organisation verwalten. Dazu gehören das Anzeigen aggregierter Ergebnisdetails für alle Mitgliedskonten, das Aktivieren oder Deaktivieren von Scans für Mitgliedskonten und das Überprüfen gescannter Ressourcen innerhalb der Organisation. AWS

Designüberlegung

Sie können Patch Manager, eine Funktion von, verwenden, um On-Demand-Patches auszulösen AWS Systems Manager, um Zero-Day-Schwachstellen oder andere kritische Sicherheitslücken in Amazon Inspector zu beheben. Patch Manager hilft Ihnen dabei, diese Sicherheitslücken zu patchen, ohne auf Ihren normalen Patching-Zeitplan warten zu müssen. Die Behebung erfolgt mithilfe des Systems Manager Automation-Runbooks. Weitere Informationen finden Sie in der zweiteiligen Blogserie Automatisieren Sie das Schwachstellenmanagement und die Behebung von Sicherheitslücken AWS mithilfe von Amazon Inspector und. AWS Systems Manager

AWS Systems Manager

AWS Systems Managerist ein Programm AWS-Service , das Sie verwenden können, um Betriebsdaten aus mehreren Ressourcen einzusehen AWS-Services und betriebliche Aufgaben zu automatisieren. AWS Mit automatisierten Genehmigungsworkflows und Runbooks können Sie daran arbeiten, menschliche Fehler zu reduzieren und Wartungs- und Bereitstellungsaufgaben für AWS Ressourcen zu vereinfachen.

Zusätzlich zu diesen allgemeinen Automatisierungsfunktionen unterstützt Systems Manager eine Reihe von präventiven, detektiven und reaktionsschnellen Sicherheitsfunktionen. AWS Systems Manager Agent (SSM Agent) ist Amazon-Software, die auf einer EC2 Instanz, einem lokalen Server oder einer virtuellen Maschine (VM) installiert und konfiguriert werden kann. SSM Agent ermöglicht es Systems Manager, diese Ressourcen zu aktualisieren, zu verwalten und zu konfigurieren. Systems Manager unterstützt Sie bei der Aufrechterhaltung von Sicherheit und Compliance, indem es diese verwalteten Instanzen scannt und alle Verstöße, die er in Ihren Patch-, Konfiguration- und benutzerdefinierten Richtlinien entdeckt, meldet (oder Korrekturmaßnahmen ergreift).

Die AWS SRA verwendet Session Manager, eine Funktion von Systems Manager, um ein interaktives, browserbasiertes Shell- und CLI-Erlebnis bereitzustellen. Dies ermöglicht eine sichere und überprüfbare Instanzverwaltung, ohne dass eingehende Ports geöffnet, Bastion-Hosts verwaltet oder SSH-Schlüssel verwaltet werden müssen. Die AWS SRA verwendet Patch Manager, eine Funktion von Systems Manager, um Patches auf EC2 Instanzen für Betriebssysteme und Anwendungen anzuwenden.

Die AWS SRA nutzt auch Automation, eine Funktion von Systems Manager, um allgemeine Wartungs- und Bereitstellungsaufgaben von EC2 Amazon-Instances und anderen AWS Ressourcen zu vereinfachen. Automatisierung kann übliche IT-Aufgaben vereinfachen, wie z. B. das Ändern des Zustands einer oder mehrerer Knoten (mithilfe einer Genehmigungs-Automatisierung) oder die Verwaltung von Knoten-Status gemäß einem Zeitplan. Systems Manager umfasst Funktionen, mit deren Hilfe Sie große Gruppen von Instances mithilfe von Tags und Geschwindigkeitskontrollen anvisieren können, um Änderungen entsprechend den von Ihnen festgelegten Grenzwerten durchzuführen. Automation bietet Automatisierungen mit einem Klick zur Vereinfachung komplexer Aufgaben wie der Erstellung goldener Amazon Machine Images (AMIs) und der Wiederherstellung nicht erreichbarer Instances. EC2 Darüber hinaus können Sie die Betriebssicherheit verbessern, indem Sie IAM-Rollen Zugriff auf bestimmte Runbooks gewähren, um bestimmte Funktionen auszuführen, ohne diesen Rollen direkt Berechtigungen zu erteilen. Wenn Sie beispielsweise möchten, dass eine IAM-Rolle berechtigt ist, bestimmte EC2 Instanzen nach Patch-Updates neu zu starten, Sie die Berechtigung aber nicht direkt dieser Rolle erteilen möchten, können Sie stattdessen ein Automatisierungs-Runbook erstellen und der Rolle die Berechtigungen erteilen, nur das Runbook auszuführen.

Designüberlegungen
  • Systems Manager ist auf EC2 Instanzmetadaten angewiesen, um korrekt zu funktionieren. Systems Manager kann mithilfe von Version 1 oder Version 2 des Instanz-Metadatendienstes (IMDSv1 und IMDSv2) auf Instanzmetadaten zugreifen.

  • Der SSM-Agent muss mit verschiedenen AWS-Services Ressourcen wie Amazon EC2 Messages, Systems Manager und Amazon S3 kommunizieren. Damit diese Kommunikation stattfinden kann, benötigt das Subnetz entweder eine ausgehende Internetverbindung oder die Bereitstellung geeigneter VPC-Endpunkte. Die AWS SRA verwendet VPC-Endpunkte für den SSM-Agent, um private Netzwerkpfade zu verschiedenen einzurichten. AWS-Services

  • Automation lässt Sie bewährte Methoden mit Ihrer restlichen Organisation teilen. Sie können bewährte Methoden für die Ressourcenverwaltung in Runbooks erstellen und die Runbooks gruppenübergreifend gemeinsam nutzen. AWS-Regionen Sie können auch die zulässigen Werte für Runbook-Parameter einschränken. Für diese Anwendungsfälle müssen Sie möglicherweise Automatisierungs-Runbooks in einem zentralen Konto wie Security Tooling oder Shared Services erstellen und sie für den Rest der Organisation freigeben. AWS Zu den häufigsten Anwendungsfällen gehören die Möglichkeit, Patches und Sicherheitsupdates zentral zu implementieren, Abweichungen bei VPC-Konfigurationen oder S3-Bucket-Richtlinien zu beheben und EC2 Instances skalierbar zu verwalten. Einzelheiten zur Implementierung finden Sie in der Systems Manager Manager-Dokumentation.

Amazon Aurora

In der AWS SRA bilden Amazon Aurora und Amazon S3 die logische Datenschicht. Aurora ist eine vollständig verwaltete, mit MySQL und PostgreSQL kompatible relationale Datenbank-Engine. Eine Anwendung, die auf den EC2 Instances ausgeführt wird, kommuniziert bei Bedarf mit Aurora und Amazon S3. Aurora ist mit einem Datenbank-Cluster innerhalb einer DB-Subnetzgruppe konfiguriert.

Designüberlegung

Wie bei vielen Datenbankdiensten wird die Sicherheit für Aurora auf drei Ebenen verwaltet. Um zu kontrollieren, wer Amazon Relational Database Service (Amazon RDS) -Managementaktionen auf Aurora-DB-Clustern und DB-Instances ausführen kann, verwenden Sie IAM. Um zu steuern, welche Geräte und EC2 Instances Verbindungen zum Cluster-Endpunkt und Port der DB-Instance für Aurora-DB-Cluster in einer VPC öffnen können, verwenden Sie eine VPC-Sicherheitsgruppe. Um Anmeldungen und Berechtigungen für einen Aurora-DB-Cluster zu authentifizieren, können Sie den gleichen Ansatz wie bei einer eigenständigen DB-Instance von MySQL oder PostgreSQL verwenden, oder Sie können die IAM-Datenbankauthentifizierung für Aurora MySQL-Compatible Edition verwenden. Bei letzterem Ansatz authentifizieren Sie sich bei Ihrem Aurora MySQL-kompatiblen DB-Cluster mithilfe einer IAM-Rolle und eines Authentifizierungstoken.

Amazon S3

Amazon S3 ist ein Objektspeicherservice, der branchenführende Skalierbarkeit, Datenverfügbarkeit, Sicherheit und Leistung bietet. Es ist das Datenrückgrat vieler darauf basierender Anwendungen AWS, und angemessene Berechtigungen und Sicherheitskontrollen sind für den Schutz sensibler Daten von entscheidender Bedeutung. Empfohlene bewährte Sicherheitsmethoden für Amazon S3 finden Sie in der Dokumentation, in Online-Technikgesprächen und in ausführlicheren Informationen in Blogbeiträgen. Die wichtigste bewährte Methode besteht darin, übermäßig freizügigen Zugriff (insbesondere öffentlichen Zugriff) auf S3-Buckets zu blockieren.

AWS KMS

Die AWS SRA veranschaulicht das empfohlene Verteilungsmodell für die Schlüsselverwaltung, bei dem sich die zu AWS KMS key verschlüsselnde Ressource innerhalb derselben Ressource AWS-Konto befindet. Aus diesem Grund AWS KMS wird es im Anwendungskonto verwendet und ist zusätzlich zum Security Tooling-Konto enthalten. AWS KMS Wird im Anwendungskonto zur Verwaltung von Schlüsseln verwendet, die für die Anwendungsressourcen spezifisch sind. Sie können eine Aufgabentrennung implementieren, indem Sie mithilfe von Schlüsselrichtlinien lokalen Anwendungsrollen Schlüsselverwendungsberechtigungen erteilen und die Verwaltungs- und Überwachungsberechtigungen auf Ihre wichtigsten Verwalter beschränken. 

Designüberlegung

In einem verteilten Modell liegt die Verantwortung für die AWS KMS Schlüsselverwaltung beim Anwendungsteam. Ihr zentrales Sicherheitsteam kann jedoch für die Steuerung und Überwachung wichtiger kryptografischer Ereignisse wie der folgenden verantwortlich sein:

  • Das importierte Schlüsselmaterial in einem KMS-Schlüssel befindet kurz vor dem Ablaufdatum.

  • Das Schlüsselmaterial in einem KMS-Schlüssel wurde automatisch rotiert.

  • Der AKMS-Schlüssel wurde gelöscht.

  • Es gibt eine hohe Rate an Entschlüsselungsfehlern.

AWS CloudHSM

AWS CloudHSMbietet verwaltete Hardware-Sicherheitsmodule (HSMs) in der AWS Cloud. Es ermöglicht Ihnen, Ihre eigenen Verschlüsselungsschlüssel mithilfe AWS von FIPS 140-2 Level 3 zu generieren und zu verwenden, auf HSMs die Sie den Zugriff kontrollieren. Sie können es verwenden AWS CloudHSM , um die SSL/TLS Verarbeitung für Ihre Webserver auszulagern. Dies reduziert die Belastung des Webservers und bietet zusätzliche Sicherheit, indem der private Schlüssel des Webservers gespeichert wird. AWS CloudHSM Sie könnten auch ein HSM AWS CloudHSM in der eingehenden VPC im Netzwerkkonto bereitstellen, um Ihre privaten Schlüssel zu speichern und Zertifikatsanfragen zu signieren, falls Sie als ausstellende Zertifizierungsstelle agieren müssen.

Designüberlegung

Wenn Sie eine strenge Anforderung für FIPS 140-2 Level 3 haben, können Sie auch festlegen, dass der AWS CloudHSM Cluster als benutzerdefinierter Schlüsselspeicher verwendet wird, anstatt den systemeigenen KMS-Schlüsselspeicher AWS KMS zu verwenden. Auf diese Weise profitieren Sie von der Integration zwischen Ihren Daten AWS KMS und AWS-Services der Verschlüsselung Ihrer Daten, während Sie gleichzeitig für den HSMs Schutz Ihrer KMS-Schlüssel verantwortlich sind. Dies kombiniert einen einzigen Mandanten HSMs unter Ihrer Kontrolle mit der Benutzerfreundlichkeit und Integration von. AWS KMS Um Ihre AWS CloudHSM Infrastruktur zu verwalten, müssen Sie eine Public-Key-Infrastruktur (PKI) einsetzen und über ein Team verfügen, das Erfahrung in der Verwaltung hat. HSMs

AWS Secrets Manager

AWS Secrets Managerhilft Ihnen dabei, die Anmeldeinformationen (Geheimnisse) zu schützen, die Sie für den Zugriff auf Ihre Anwendungen, Dienste und IT-Ressourcen benötigen. Mit diesem Service können Sie Datenbankanmeldedaten, API-Schlüssel und andere Geheimnisse während ihres gesamten Lebenszyklus effizient rotieren, verwalten und abrufen. Sie können hartcodierte Anmeldeinformationen in Ihrem Code durch einen API-Aufruf an Secrets Manager ersetzen, um das Geheimnis programmgesteuert abzurufen. Dadurch wird sichergestellt, dass das Geheimnis nicht von jemandem, der Ihren Code untersucht, kompromittiert werden kann, da das Geheimnis nicht mehr im Code enthalten ist. Darüber hinaus hilft Ihnen Secrets Manager dabei, Ihre Anwendungen zwischen Umgebungen (Entwicklung, Vorproduktion, Produktion) zu verschieben. Anstatt den Code zu ändern, können Sie sicherstellen, dass ein entsprechend benannter und referenzierter Secret in der Umgebung verfügbar ist. Dies fördert die Konsistenz und Wiederverwendbarkeit des Anwendungscodes in verschiedenen Umgebungen und erfordert gleichzeitig weniger Änderungen und menschliche Interaktionen, nachdem der Code getestet wurde.

Mit Secrets Manager können Sie den Zugriff auf geheime Daten mithilfe detaillierter IAM-Richtlinien und ressourcenbasierter Richtlinien verwalten. Sie können zum Schutz von Geheimnissen beitragen, indem Sie sie mit Verschlüsselungsschlüsseln verschlüsseln, die Sie selbst verwenden. AWS KMS Secrets Manager lässt sich auch in AWS Protokollierungs- und Überwachungsdienste integrieren, um eine zentrale Prüfung zu ermöglichen.

Secrets Manager verwendet AWS KMS keys Umschlagverschlüsselung mit Datenschlüsseln, um jeden geheimen Wert zu schützen. Wenn Sie einen geheimen Schlüssel erstellen, können Sie einen beliebigen symmetrischen, vom Kunden verwalteten Schlüssel in der Region AWS-Konto und wählen, oder Sie können den AWS verwalteten Schlüssel für Secrets Manager verwenden.

Es hat sich bewährt, dass Sie Ihre Secrets überwachen können, um alle Änderungen daran zu protokollieren. Auf diese Weise können Sie sicherstellen, dass jede unerwartete Verwendung oder Änderung untersucht werden kann. Unerwünschte Änderungen können rückgängig gemacht werden. Secrets Manager unterstützt derzeit zwei AWS-Services , mit denen Sie Ihre Organisation und Aktivitäten überwachen können: AWS CloudTrail und AWS Config. CloudTrail erfasst alle API-Aufrufe für Secrets Manager als Ereignisse, einschließlich Aufrufe von der Secrets Manager-Konsole und von Codeaufrufen an den Secrets Manager APIs. CloudTrail Erfasst darüber hinaus andere verwandte (nicht API-bezogene) Ereignisse, die sich auf Ihre Sicherheit oder Konformität auswirken AWS-Konto oder Ihnen bei der Behebung betrieblicher Probleme helfen könnten. Dazu gehören Rotationsereignisse bei bestimmten Geheimnissen und das Löschen geheimer Versionen. AWS Config kann detektivische Kontrollen bereitstellen, indem Änderungen an Geheimnissen in Secrets Manager verfolgt und überwacht werden. Zu diesen Änderungen gehören die Beschreibung, die Rotationskonfiguration, die Tags und die Beziehung zu anderen AWS Quellen wie dem KMS-Verschlüsselungsschlüssel oder den AWS Lambda Funktionen, die für die geheime Rotation verwendet werden. Sie können Amazon EventBridge, das Benachrichtigungen über Konfiguration und Konformitätsänderungen von erhält, auch so konfigurieren AWS Config, dass bestimmte geheime Ereignisse für Benachrichtigungen oder Abhilfemaßnahmen weitergeleitet werden.

In der AWS SRA befindet sich Secrets Manager im Anwendungskonto, um lokale Anwendungsfälle zu unterstützen und Geheimnisse zu verwalten, die ihrer Verwendung nahe kommen. Hier wird ein Instanzprofil an die EC2 Instanzen im Anwendungskonto angehängt. Separate Secrets können dann in Secrets Manager konfiguriert werden, sodass das Instance-Profil geheime Daten abrufen kann, z. B. um der entsprechenden Active Directory- oder LDAP-Domäne beizutreten und auf die Aurora-Datenbank zuzugreifen. Secrets Manager ist in Amazon RDS integriert, um Benutzeranmeldeinformationen zu verwalten, wenn Sie eine Amazon RDS-DB-Instance oder einen Multi-AZ-DB-Cluster erstellen, ändern oder wiederherstellen. Dies hilft Ihnen bei der Verwaltung der Erstellung und Rotation von Schlüsseln und ersetzt die hartcodierten Anmeldeinformationen in Ihrem Code durch programmatische API-Aufrufe an Secrets Manager. 

Designüberlegung

Im Allgemeinen sollten Sie Secrets Manager in dem Konto konfigurieren und verwalten, das dem Ort, an dem die Secrets verwendet werden, am nächsten ist. Dieser Ansatz nutzt die lokalen Kenntnisse des Anwendungsfalls und bietet Anwendungsentwicklungsteams Geschwindigkeit und Flexibilität. Für streng kontrollierte Informationen, bei denen eine zusätzliche Kontrollebene angebracht sein könnte, können Geheimnisse zentral vom Secrets Manager im Security Tooling-Konto verwaltet werden.

Amazon Cognito

Mit Amazon Cognito können Sie Ihren Web- und mobilen Apps schnell und effizient Benutzerregistrierung, Anmeldung und Zugriffskontrolle hinzufügen. Amazon Cognito ist auf Millionen von Benutzern skalierbar und unterstützt die Anmeldung bei Anbietern sozialer Identitäten wie Apple, Facebook, Google und Amazon sowie bei Anbietern von Unternehmensidentitäten über SAML 2.0 und OpenID Connect. Die beiden Hauptkomponenten von Amazon Cognito sind Benutzerpools und Identitätspools. Benutzerpools sind Benutzerverzeichnisse, die Anmelde- und Anmeldeoptionen für Ihre Anwendungsbenutzer bieten. Mithilfe von Identitätspools können Sie Ihren Benutzern Zugriff auf andere gewähren. AWS-Services Sie können Identitäten-Pools und Benutzerpools getrennt oder zusammen verwenden. Allgemeine Nutzungsszenarien finden Sie in der Amazon Cognito Cognito-Dokumentation.

Amazon Cognito bietet eine integrierte und anpassbare Benutzeroberfläche für die Benutzerregistrierung und -anmeldung. Sie können Android, iOS und JavaScript SDKs Amazon Cognito verwenden, um Benutzerregistrierungs- und Anmeldeseiten zu Ihren Apps hinzuzufügen. Amazon Cognito Sync ist eine AWS-Service AND-Client-Bibliothek, die die geräteübergreifende Synchronisierung anwendungsbezogener Benutzerdaten ermöglicht.

Amazon Cognito unterstützt die Multi-Faktor-Authentifizierung und Verschlüsselung von Daten im Ruhezustand und Daten während der Übertragung. Amazon Cognito Cognito-Benutzerpools bieten erweiterte Sicherheitsfunktionen, um den Zugriff auf Benutzerkonten in Ihrer Anwendung zu schützen. Diese erweiterten Sicherheitsfunktionen bieten eine risikobasierte adaptive Authentifizierung und Schutz vor der Verwendung kompromittierter Anmeldeinformationen. 

Designüberlegungen
  • Sie können eine AWS Lambda Funktion erstellen und diese Funktion dann bei Benutzerpoolvorgängen wie Benutzeranmeldung, Bestätigung und Anmeldung (Authentifizierung) mit einem Lambda-Trigger auslösen. Sie können Authentifizierungsaufforderungen hinzufügen, Benutzer migrieren und Verifizierungsnachrichten anpassen. Informationen zu allgemeinen Vorgängen und Benutzerabläufen finden Sie in der Amazon Cognito Cognito-Dokumentation. Amazon Cognito ruft Lambda-Funktionen synchron auf.

  • Sie können Amazon Cognito Cognito-Benutzerpools verwenden, um kleine, mandantenfähige Anwendungen zu sichern. Ein häufiger Anwendungsfall für Multi-Tenant-Designs ist die Ausführung von Workloads, um das Testen mehrerer Versionen einer Anwendung zu unterstützen. Ein Design mit mehreren Mandanten ist auch nützlich, um eine einzelne Anwendung mit unterschiedlichen Datensätzen zu testen, was die volle Nutzung Ihrer Clusterressourcen ermöglicht. Stellen Sie jedoch sicher, dass die Anzahl der Mandanten und das erwartete Volumen mit den entsprechenden Amazon Cognito-Servicekontingenten übereinstimmen. Diese Kontingente werden für alle Mandanten in Ihrer Anwendung freigegeben.

Amazon Verified Permissions

Amazon Verified Permissions ist ein skalierbares Berechtigungsmanagement und ein detaillierter Autorisierungsservice für die von Ihnen erstellten Anwendungen. Entwickler und Administratoren können Cedar verwenden, eine speziell entwickelte und sicherheitsorientierte Open-Source-Richtliniensprache mit Rollen und Attributen, um detailliertere, kontextsensitive und richtlinienbasierte Zugriffskontrollen zu definieren. Entwickler können sicherere Anwendungen schneller erstellen, indem sie die Autorisierung externalisieren und die Richtlinienverwaltung und -verwaltung zentralisieren. Verified Permissions umfasst Schemadefinitionen, die Grammatik von Richtlinienerklärungen und automatische Argumentation, die sich auf Millionen von Berechtigungen erstrecken, sodass Sie die Prinzipien der Standardverweigerung und der geringsten Zugriffsrechte durchsetzen können. Der Service umfasst auch einen Evaluierungssimulator, mit dem Sie Ihre Autorisierungsentscheidungen und Autorenrichtlinien testen können. Diese Funktionen erleichtern die Implementierung eines detaillierten, detaillierten Autorisierungsmodells zur Unterstützung Ihrer Zero-Trust-Ziele. Verified Permissions zentralisiert Berechtigungen in einem Richtlinienspeicher und hilft Entwicklern, diese Berechtigungen zu verwenden, um Benutzeraktionen in ihren Anwendungen zu autorisieren.

Sie können Ihre Anwendung über die API mit dem Dienst verbinden, um Benutzerzugriffsanfragen zu autorisieren. Für jede Autorisierungsanfrage ruft der Service die relevanten Richtlinien ab und bewertet diese Richtlinien, um anhand von Kontexteingaben wie Benutzern, Rollen, Gruppenmitgliedschaft und Attributen festzustellen, ob ein Benutzer eine Aktion an einer Ressource ausführen darf. Sie können verifizierte Berechtigungen konfigurieren und verbinden, an die Ihre Richtlinienverwaltungs- und Autorisierungsprotokolle gesendet werden sollen. AWS CloudTrail Wenn Sie Amazon Cognito als Identitätsspeicher verwenden, können Sie Verified Permissions integrieren und die ID- und Zugriffstoken verwenden, die Amazon Cognito bei den Autorisierungsentscheidungen in Ihren Anwendungen zurückgibt. Sie stellen Amazon Cognito Cognito-Token für Verified Permissions bereit. Verified Permissions verwendet die Attribute, die die Token enthalten, um den Principal darzustellen und die Rechte des Prinzipals zu identifizieren. Weitere Informationen zu dieser Integration finden Sie im AWS Blogbeitrag Vereinfachung der feinkörnigen Autorisierung mit Amazon Verified Permissions und Amazon Cognito

Verified Permissions hilft Ihnen bei der Definition einer richtlinienbasierten Zugriffskontrolle (PBAC). PBAC ist ein Zugriffskontrollmodell, das mithilfe von Berechtigungen, die als Richtlinien ausgedrückt werden, bestimmt, wer auf welche Ressourcen in einer Anwendung zugreifen kann. PBAC vereint die rollenbasierte Zugriffskontrolle (RBAC) und die attributebasierte Zugriffskontrolle (ABAC), was zu einem leistungsfähigeren und flexibleren Zugriffskontrollmodell führt. Weitere Informationen über PBAC und darüber, wie Sie mithilfe von Verified Permissions ein Autorisierungsmodell entwerfen können, finden Sie im AWS Blogbeitrag Policy-based access control in application development with Amazon Verified Permissions.

In der AWS SRA befindet sich Verified Permissions im Anwendungskonto, um die Rechteverwaltung für Anwendungen durch die Integration mit Amazon Cognito zu unterstützen.

Mehrschichtiger Schutz

Das Anwendungskonto bietet die Möglichkeit, die Prinzipien der mehrschichtigen Verteidigung zu veranschaulichen, die dies AWS ermöglichen. Betrachten Sie die Sicherheit der EC2 Instanzen, die den Kern einer einfachen Beispielanwendung bilden, die in der AWS SRA dargestellt wird, und Sie können sehen, wie eine mehrschichtige Verteidigung AWS-Services zusammenarbeitet. Dieser Ansatz entspricht der strukturellen Sichtweise von AWS Sicherheitsdiensten, wie sie im Abschnitt Wenden Sie Sicherheitsdienste in Ihrem AWS Unternehmen weiter oben in diesem Handbuch beschrieben haben.

  • Die innerste Schicht sind die EC2 Instanzen. Wie bereits erwähnt, enthalten EC2 Instances viele systemeigene Sicherheitsfunktionen, entweder standardmäßig oder als Optionen. Beispiele hierfür sind IMDSv2das Nitro-System und die Amazon EBS-Speicherverschlüsselung.

  • Die zweite Schutzschicht konzentriert sich auf das Betriebssystem und die Software, die auf den EC2 Instances ausgeführt werden. Dienste wie Amazon Inspector AWS Systems Managerermöglichen es Ihnen, diese Konfigurationen zu überwachen, zu melden und Korrekturmaßnahmen zu ergreifen. Amazon Inspector überwacht Ihre Software auf Sicherheitslücken und Systems Manager unterstützt Sie bei der Aufrechterhaltung von Sicherheit und Compliance, indem verwaltete Instances auf ihren Patch - und Konfigurationsstatus überprüft und anschließend alle von Ihnen angegebenen Korrekturmaßnahmen gemeldet und ergriffen werden.

  • Die Instances und die auf diesen Instances ausgeführte Software gehören zu Ihrer AWS Netzwerkinfrastruktur. Die AWS SRA nutzt nicht nur die Sicherheitsfunktionen von Amazon VPC, sondern nutzt auch VPC-Endpunkte, um private Konnektivität zwischen der VPC und dem Support AWS-Services bereitzustellen und um einen Mechanismus zur Platzierung von Zugriffsrichtlinien an der Netzwerkgrenze bereitzustellen.

  • Die Aktivität und Konfiguration der EC2 Instances, Software-, Netzwerk- und IAM-Rollen und AWS-Konto-Ressourcen werden zusätzlich durch spezielle Services wie AWS Security Hub CSPM,, Amazon,, AWS Security Hub GuardDuty AWS CloudTrail AWS Config, IAM Access Analyzer und Amazon Macie überwacht.

  • Darüber hinaus AWS RAM hilft Ihnen das Anwendungskonto dabei, zu kontrollieren, welche Ressourcen mit anderen Konten gemeinsam genutzt werden, und die Richtlinien zur IAM-Servicekontrolle helfen Ihnen dabei, einheitliche Berechtigungen im gesamten Unternehmen durchzusetzen. AWS