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).
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
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
AWS Nitro-Enklaven
AWS Nitro Enclaves
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
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
-
Für allgemeine Szenarien, wie z. B. rein interne Anwendungen, die ein privates TLS-Zertifikat auf dem Application Load Balancer benötigen, können Sie ACM innerhalb dieses Kontos verwenden, um daraus ein privates Zertifikat zu generieren. AWS Private CAIn der AWS SRA wird die private ACM-Stammzertifizierungsstelle im Security Tooling-Konto gehostet und kann, wie weiter oben im Abschnitt Security Tooling-Konto beschrieben, mit der gesamten AWS Organisation oder mit speziell AWS-Konten ausgestellten Endzertifikaten gemeinsam genutzt werden.
-
Bei öffentlichen Zertifikaten können Sie ACM verwenden, um diese Zertifikate zu generieren und zu verwalten, einschließlich automatisierter Rotation. Alternativ können Sie Ihre eigenen Zertifikate generieren, indem Sie SSL/TLS Tools verwenden, um eine Certificate Signing Request (CSR) zu erstellen, die CSR von einer Zertifizierungsstelle (CA) signieren zu lassen, um ein Zertifikat zu erstellen, und dann das Zertifikat in ACM importieren oder das Zertifikat zur Verwendung mit dem Application Load Balancer in IAM hochladen. Wenn Sie ein Zertifikat in ACM importieren, müssen Sie das Ablaufdatum des Zertifikats überwachen und es verlängern, bevor es abläuft.
-
Für zusätzliche Schutzebenen können Sie AWS WAF Richtlinien zum Schutz des Application Load Balancer bereitstellen. Edge-Richtlinien, Anwendungsrichtlinien und sogar private oder interne Ebenen zur Durchsetzung von Richtlinien erhöhen die Sichtbarkeit von Kommunikationsanfragen und sorgen für eine einheitliche Durchsetzung von Richtlinien. Weitere Informationen finden Sie im Blogbeitrag Deploying Defense in depth using Von AWS verwaltete Regeln for AWS WAF
.
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
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
AWS Systems Manager
AWS Systems Manager
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
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
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 CloudHSM
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 Manager
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
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
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
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 Manager
ermö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