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.
SEC02-BP02 Verwenden von temporären Anmeldeinformationen
Bei Authentifizierungen jeder Art, sollten am besten temporäre anstelle langfristiger Anmeldeinformationen verwendet werden, um Risiken zu reduzieren oder zu eliminieren, etwa durch die unbeabsichtigte Offenlegung, die Weitergabe oder den Diebstahl von Anmeldeinformationen.
Gewünschtes Ergebnis: Um das Risiko langfristiger Anmeldeinformationen zu verringern, sollten Sie nach Möglichkeit sowohl für menschliche als auch für maschinelle Identitäten temporäre Anmeldeinformationen verwenden. Langfristige Anmeldeinformationen sind mit vielen Risiken verbunden. So kann es beispielsweise zu einer Offenlegung durch Uploads in öffentliche Repositorys kommen. Durch die Verwendung temporärer Anmeldeinformationen können Sie die Gefahr, dass Anmeldeinformationen kompromittiert werden, deutlich senken.
Typische Anti-Muster:
-
Entwickler verwenden langfristige Zugriffsschlüssel von IAM-Benutzern, anstatt sich temporäre Anmeldeinformationen per Verbund von der CLI zu beschaffen.
-
Entwickler betten langfristige Zugriffsschlüssel in ihren Code ein und laden diese in öffentliche Git-Repositorys hoch.
-
Entwickler betten langfristige Zugriffsschlüssel in Mobil-Apps ein, die dann in App-Stores verfügbar gemacht werden.
-
Benutzer geben langfristige Zugriffsschlüssel an andere Benutzer weiter, oder Mitarbeiter verlassen das Unternehmen und besitzen weiterhin langfristige Zugriffsschlüssel.
-
Es werden langfristige Zugriffsschlüssel für Maschinenidentitäten genutzt, obwohl temporäre Anmeldeinformationen verwendet werden könnten.
Risikostufe, wenn diese bewährte Methode nicht eingeführt wird: Hoch
Implementierungsleitfaden
Verwenden Sie temporäre anstelle langfristiger Anmeldeinformationen für alle AWS-API- und ‑CLI-Anfragen. API- und CLI-Anfragen an AWS-Services müssen in fast allen Fällen mit AWS-Zugriffsschlüsseln signiert werden. Diese Anfragen können mit temporären oder langfristigen Anmeldeinformationen signiert werden. Langfristige Anmeldeinformationen – auch als langfristige Zugriffsschlüssel bezeichnet – sollten Sie nur verwenden, wenn Sie einen IAM-Benutzer oder den AWS-Konto-Root-Benutzer verwenden. Wenn Sie auf andere Weise einen Verbund mit AWS herstellen oder eine IAM-Rolle übernehmen, werden temporäre Anmeldeinformationen generiert. Selbst wenn Sie mit Anmeldeinformationen auf die AWS Management Console zugreifen, werden für Sie temporäre Anmeldeinformationen für Aufrufe von AWS-Services generiert. Es gibt nur wenige Situationen, in denen Sie langfristige Anmeldeinformationen benötigen, und fast alle Aufgaben lassen sich mit temporären Anmeldeinformationen erledigen.
Das Vermeiden der Verwendung langfristiger zugunsten temporärer Anmeldeinformationen sollte von einer Strategie zur Reduzierung der Verwendung von IAM-Benutzern gegenüber Verbundverfahren und IAM-Rollen begleitet werden. Zwar wurden früher IAM-Benutzer für menschliche und maschinelle Identitäten verwendet, wir empfehlen heute jedoch, dies nicht mehr zu tun, um die mit der Verwendung langfristiger Zugriffsschlüssel verbundenen Risiken zu vermeiden.
Implementierungsschritte
Menschliche Identitäten
Für Identitäten der Belegschaft wie Mitarbeiter, Administratoren, Entwickler und Bediener:
-
Wir empfehlen Ihnen, sich auf einen zentralen Identitätsanbieter zu verlassen und menschliche Benutzer aufzufordern, den Verbund mit einem Identitätsanbieter zu verwenden, um mit temporären Anmeldeinformationen auf AWS zuzugreifen. Der Verbund für Ihre Benutzer kann entweder in Form eines direkten Verbunds mit jedem AWS-Konto
oder unter Verwendung von AWS IAM Identity Center und dem Identitätsanbieter Ihrer Wahl erfolgen. Ein Verbund bietet eine Reihe von Vorteilen gegenüber der Verwendung von IAM-Benutzern und eliminiert langfristige Anmeldeinformationen. Ihre Benutzer können auch temporäre Anmeldeinformationen über die Befehlszeile für den direkten Verbund oder mithilfe von IAM Identity Center anfordern. Dies bedeutet, dass es nur wenige Anwendungsfälle gibt, für die IAM-Benutzer oder langfristige Anmeldeinformationen für Ihre Benutzer erforderlich sind.
Für externe Identitäten:
-
Wenn Sie Dritten – etwa Software as a Service (SaaS)-Anbietern – Zugriff auf Ressourcen in Ihrem AWS-Konto gewähren, können Sie kontoübergreifende Rollen und ressourcenbasierte Richtlinien verwenden. Darüber hinaus können Sie den Flow zum Erteilen von Client-Anmeldeinformationen in Amazon Cognito OAuth 2.0 für B2B-SaaS-Kunden oder -Partner verwenden.
Benutzeridentitäten, die über Web-Browser, Client-Anwendungen, mobile Apps oder interaktive Befehlszeilentools auf Ihre AWS-Ressourcen zugreifen:
-
Wenn Sie Anwendungen für Verbraucher oder Kunden Zugriff auf Ihre AWS-Ressourcen gewähren müssen, können Sie Amazon Cognito-Identitätspools oder Amazon Cognito-Benutzerpools verwenden, um temporäre Anmeldeinformationen bereitzustellen. Die Berechtigungen für die Anmeldeinformationen werden über IAM-Rollen konfiguriert. Darüber hinaus können Sie eine separate IAM-Rolle mit beschränkten Berechtigungen für Gastbenutzer anlegen, die nicht authentifiziert wurden.
Maschinenidentitäten
Für Maschinenidentitäten müssen Sie möglicherweise langfristige Anmeldeinformationen verwenden. In diesen Fällen sollten Sie Workloads auffordern, temporäre Anmeldeinformationen mit IAM-Rollen für den Zugriff auf AWS zu verwenden.
-
Für Amazon Elastic Compute Cloud
(Amazon EC2) können Sie Rollen für Amazon EC2 verwenden. -
AWS Lambda
ermöglicht es Ihnen, eine Lambda-Ausführungsrolle zu konfigurieren, um dem Service Berechtigungen zu gewähren, die die Ausführung von AWS-Aktionen mit temporären Anmeldeinformationen erlauben. Es gibt zahlreiche ähnliche Modelle für AWS-Services zum Gewähren temporärer Anmeldeinformationen mit IAM-Rollen. -
Für IoT-Geräte können Sie den AWS IoT Core-Anmeldeinformationsanbieter verwenden, um temporäre Anmeldeinformationen anzufordern.
-
Für On-Premises-Systeme oder Systeme, die außerhalb von AWS ausgeführt werden und Zugriff auf AWS-Ressourcen benötigen, können Sie IAM Roles Anywhere verwenden.
Es gibt Szenarien, in denen temporäre Anmeldeinformationen nicht unterstützt werden und langfristige Anmeldeinformationen verwendet werden müssen. In diesen Situationen sollten diese Anmeldeinformationen regelmäßig überprüft und rotiert und Zugriffsschlüssel regelmäßig rotiert werden. Bei stark eingeschränkten Zugriffsschlüsseln für IAM-Benutzer sollten Sie die folgenden zusätzlichen Sicherheitsmaßnahmen in Betracht ziehen:
-
Erteilung stark eingeschränkter Berechtigungen:
-
Halten Sie sich an das Prinzip der geringsten Berechtigung (machen Sie konkrete Angaben zu Aktionen, Ressourcen und Bedingungen).
-
Erwägen Sie, dem IAM-Benutzer nur die Operation „AssumeRole“ für eine bestimmte Rolle zu gewähren. Abhängig von der On-Premises-Architektur hilft dieser Ansatz, die langfristigen IAM-Anmeldeinformationen zu isolieren und zu sichern.
-
-
Beschränken Sie die zulässigen Netzwerkquellen und IP-Adressen in der Vertrauensrichtlinie für IAM-Rollen.
-
Überwachen Sie die Nutzung und richten Sie Warnmeldungen bei ungenutzten Berechtigungen oder missbräuchlicher Verwendung ein (unter Verwendung der Metrikfilter und Alarme von AWS CloudWatch Logs).
-
Setzen Sie Berechtigungsgrenzen durch (Service-Kontrollrichtlinien (SCPs) und Berechtigungsgrenzen ergänzen sich gegenseitig – SCPs sind weniger stark differenziert, Berechtigungsgrenzen dagegen stärker differenziert).
-
Implementieren Sie einen Prozess zur Bereitstellung und sicheren Speicherung der Anmeldeinformationen (in einem On-Premises-Tresor).
Einige weitere Optionen für Szenarien, in denen langfristige Anmeldeinformationen erforderlich sind:
-
Erstellen Ihrer eigenen API für die Token-Vergabe (mit Amazon API Gateway).
-
In Situationen, in denen Sie langfristige Anmeldeinformationen oder andere Anmeldeinformationen als AWS-Zugriffsschlüssel verwenden müssen (z. B. Datenbankanmeldungen), können Sie einen Service verwenden, der für die Verwaltung von Secrets konzipiert ist, wie etwa AWS Secrets Manager
. Secrets Manager vereinfacht die Verwaltung, Rotation und sichere Speicherung verschlüsselter Secrets. Viele AWS-Services unterstützen eine direkte Integration mit Secrets Manager. -
Für Multi-Cloud-Integrationen können Sie einen Identitätsverbund auf der Grundlage Ihrer Quell-CSP-Anmeldeinformationen (CSP = Credential Service Provider) verwenden (siehe AWS STS AssumeRoleWithWebIdentity).
Weitere Informationen zum Austauschen von langfristigen Anmeldeinformationen finden Sie unter Rotieren der Zugriffsschlüssel
Ressourcen
Zugehörige bewährte Methoden:
Zugehörige Dokumente:
Zugehörige Videos: