Was ist AWS Identity and Access Management (IAM) ?
AWS Idendity and Access Management (IAM) ist der Identitäts- und Zugriffsmanagement-Dienst von AWS. Wenn du einen Amazon AWS-Dienst (Webhosting, Kubernetes-Cluster, virtuelle Maschinen usw.) nutzt, durchläufst du automatisch eine Identifikationsphase.
Die verschiedenen AWS IAM-Einheiten
IAM hat mehrere Einheiten, mit denen du die verschiedenen Zugriffe auf die verschiedenen Ressourcen verfeinern kannst:
Einheit | Beschreibung | Wo man es benutzt |
---|---|---|
Benutzer |
Jede Person, die auf deine AWS-Ressourcen zugreifen muss, benötigt ein Benutzerkonto. Die Berechtigungen werden dann über die Zugriffsrichtlinien festgelegt. | Einigen Personen für bestimmte Aufgaben einen spezifischen Zugriff gewähren. |
Gruppen |
Es handelt sich um eine Gruppe von Benutzern mit gemeinsamen Berechtigungen. Benutzer können je nach Bedarf hinzugefügt oder entfernt werden. | Ermöglicht es, einer Gruppe von Benutzerkonten gemeinsame Berechtigungen zu erteilen. |
Rollen |
Rollen werden verwendet, um Benutzern oder AWS-Ressourcen temporär Berechtigungen zu erteilen. | Rollen werden verwendet, wenn du Benutzern oder Ressourcen vorübergehend Berechtigungen erteilen musst. |
Zugriffsrichtlinien |
Json-Dokument, das die Berechtigungen für eine oder mehrere IAM-Entitäten definiert. Diese Richtlinien legen fest, welche Aktionen Benutzer an Ressourcen durchführen können und unter welchen Bedingungen diese Aktionen ausgeführt werden können. | Nutze Zugriffsrichtlinien, um granulare Berechtigungen für jede IAM-Entität in deinem AWS-Konto festzulegen. |
Credentials Report |
Bericht, der Informationen über die verschiedenen Authentifizierungen und Autorisierungen deines IAM-Kontos liefert. | Audit und Überwachung des Benutzerzugriffs und Erkennung von Sicherheitsanomalien. |
Identity Provider |
Drittanbieterdienst, um über andere Anbieter (Google, Facebook, Cognito usw.) eine Authentifizierung für deine Ressourcen bereitzustellen. | Authentifizierung über einen Drittanbieterdienst statt über die AWS-Anmeldeinformationen. |
Wie funktioniert AWS Identity Access Management (IAM) ?
AWS IAM ist vollständig kompatibel mit den meisten AWS-Computing-, Container-, Speicher-, Datenbank- und anderen Cloud-Angeboten. IAM ist jedoch nicht mit allen Angeboten der Plattform vollständig kompatibel, daher solltest du die Kompatibilität vor der Implementierung des Dienstes überprüfen.
Die IAM-Infrastruktur wird anhand des folgenden Diagramms veranschaulicht:
Erläuterung: Ein Principal (ein menschlicher Benutzer oder eine Anwendung, die eine Anfrage stellt, um AWS-Ressourcen zu nutzen) verwendet seine Credentials, um sich zu authentifizieren. Eine Anfrage wird durchgeführt, um dem Principal Zugriff zu gewähren. Der Zugriff wird durch eine Autorisierungsanfrage gewährt. Sobald der Principal autorisiert ist, kann er Aktionen oder Vorgänge auf deinem AWS-Konto durchführen.
AWS Identity Access Management (IAM) - Best Practices
✅ Verwende niemals den Root-Benutzer (root user), um die üblichen Aufgaben auszuführen.
✅Menschliche Benutzer müssen temporäre IDs verwenden, um auf AWS-Ressourcen zuzugreifen. Du kannst für diese Nutzer einen Identitätsanbieter verwenden, um ihnen eine Rolle zuzuweisen, die temporäre Anmeldeinformationen bereitstellt.
✅Verwende eine Multi-Faktor-Authentifizierung (MFA) für Benutzer und Rollen.
✅Planen Sie einen regelmäßigen Wechsel der Zugangsschlüssel für Nutzungen, die langfristige Identifikationen erfordern.
✅Um die für eine bestimmte Aufgabe erforderlichen Berechtigungen zu erteilen, solltest du minimale Zugriffsrichtlinien verwenden, die auf der gewünschten Aktivität basieren. Mit dem IAM Access Analyzer kannst du diese Richtlinien erstellen und prüfen.
✅Prüfe regelmäßig Benutzer, Konten, Rollen und Sicherheitsrichtlinien und lösche diejenigen, die veraltet sind oder nicht mehr verwendet werden.
Fazit
Zusammenfassend lässt sich sagen, dass IAM die Verwaltung von Identitäten und Zugriffen auf ein AWS-Konto ermöglicht.
Damit kannst du die Berechtigungen für den Zugriff auf Ressourcen kontrollieren, die Nutzung von Ressourcen prüfen und Sicherheitsrichtlinien verwalten.
Auf diese Weise können deine Nutzer von einem hohen Sicherheitsniveau profitieren und gleichzeitig die von AWS gebotene Flexibilität und Skalierbarkeit nutzen.