Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Automatisches Überprüfen und Bereitstellen von IAM Richtlinien und Rollen in einem AWS Konto mithilfe CodePipeline von IAM Access Analyzer und AWS CloudFormation Makros - AWS Prescriptive Guidance

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.

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.

Automatisches Überprüfen und Bereitstellen von IAM Richtlinien und Rollen in einem AWS Konto mithilfe CodePipeline von IAM Access Analyzer und AWS CloudFormation Makros

Erstellt von Helton Ribeiro () und Guilherme Simoes () AWS AWS

Übersicht

Hinweis: AWS CodeCommit ist für Neukunden nicht mehr verfügbar. Bestandskunden von AWS CodeCommit können den Service weiterhin wie gewohnt nutzen. Weitere Informationen.

Dieses Muster beschreibt die Schritte und bietet Code zum Erstellen einer Bereitstellungspipeline, die es Ihren Entwicklungsteams ermöglicht, Richtlinien und Rollen für AWS Identity and Access Management (IAM) in Ihren Amazon Web Services (AWS) -Konten zu erstellen. Dieser Ansatz hilft Ihrem Unternehmen, den Aufwand für Ihre operativen Teams zu reduzieren und den Bereitstellungsprozess zu beschleunigen. Es hilft Ihren Entwicklern auch dabei, IAM Rollen und Richtlinien zu erstellen, die mit Ihren bestehenden Governance- und Sicherheitskontrollen kompatibel sind.

Der Ansatz dieses Musters verwendet AWSIdentity and Access Management Access Analyzer, um die IAM Richtlinien zu überprüfen, die Sie IAM Rollen zuordnen möchten, und verwendet AWS CloudFormation sie zur Bereitstellung der IAM Rollen. Anstatt die AWS CloudFormation Vorlagendatei jedoch direkt zu bearbeiten, erstellt Ihr Entwicklungsteam IAM Richtlinien und Rollen JSON im -Format. Ein AWS CloudFormation Makro wandelt diese JSON -formatierten Richtliniendateien vor Beginn der Bereitstellung in AWS CloudFormation IAM Ressourcentypen um.

Die Bereitstellungspipeline (RolesPipeline) besteht aus Quell-, Überprüfungs- und Bereitstellungsphasen. In der Quellphase überträgt Ihr Entwicklungsteam die JSON Dateien, die die Definition der IAM Rollen und Richtlinien enthalten, in ein AWS CodeCommit Repository. AWS CodeBuild führt dann ein Skript aus, um diese Dateien zu validieren, und kopiert sie in einen Amazon Simple Storage Service (Amazon S3) -Bucket. Da Ihre Entwicklungsteams keinen direkten Zugriff auf die in einem separaten S3-Bucket gespeicherte AWS CloudFormation Vorlagendatei haben, müssen sie den Prozess zur JSON Dateierstellung und -validierung befolgen.

Schließlich AWS CodeDeploy verwendet es während der Bereitstellungsphase einen AWS CloudFormation Stack, um die IAM Richtlinien und Rollen in einem Konto zu aktualisieren oder zu löschen.

Wichtig

Der Workflow dieses Musters ist ein Machbarkeitsnachweis (POC), und wir empfehlen, ihn nur in einer Testumgebung zu verwenden. Wenn Sie den Ansatz dieses Musters in einer Produktionsumgebung verwenden möchten, finden Sie IAMin der IAM Dokumentation den Abschnitt Bewährte Sicherheitsmethoden und nehmen Sie die erforderlichen Änderungen an Ihren IAM Rollen und AWS Diensten vor.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives AWS-Konto.

  • Ein neuer oder vorhandener S3-Bucket für die RolesPipeline Pipeline. Stellen Sie sicher, dass die von Ihnen verwendeten Zugangsdaten berechtigt sind, Objekte in diesen Bucket hochzuladen.

  • AWSBefehlszeilenschnittstelle (AWSCLI), installiert und konfiguriert. Weitere Informationen dazu finden Sie AWS CLI in der AWS CLI Dokumentation unter Installation, Aktualisierung und Deinstallation von

  • AWSServerloses Anwendungsmodell (AWSSAM)CLI, installiert und konfiguriert. Weitere Informationen dazu finden Sie AWS SAM CLI in der AWS SAM Dokumentation unter Installation von

  • Python 3, auf Ihrem lokalen Computer installiert. Weitere Informationen dazu finden Sie in der Python-Dokumentation.

  • Ein Git-Client, installiert und konfiguriert.

  • Das GitHub IAM roles pipeline Repository, auf Ihren lokalen Computer geklont. 

  • JSONBestehende IAM Richtlinien und Rollen im -Format. Weitere Informationen dazu finden Sie in der ReadMeDatei im IAM roles pipeline Github-Repository.

  • Ihr Entwicklerteam darf nicht berechtigt sein, die AWS CodePipeline CodeBuild, und CodeDeploy Ressourcen dieser Lösung zu bearbeiten.

Einschränkungen

  • Der Workflow dieses Musters ist ein Machbarkeitsnachweis (POC), und wir empfehlen, ihn nur in einer Testumgebung zu verwenden. Wenn Sie den Ansatz dieses Musters in einer Produktionsumgebung verwenden möchten, finden Sie IAMin der IAM Dokumentation den Abschnitt Bewährte Sicherheitsmethoden und nehmen Sie die erforderlichen Änderungen an Ihren IAM Rollen und AWS Diensten vor.

Architektur

Das folgende Diagramm zeigt, wie Sie IAM Rollen und Richtlinien mithilfe CodePipeline von IAM Access Analyzer und AWS CloudFormation Makros automatisch validieren und für ein Konto bereitstellen.

Schritte zur Validierung und Bereitstellung von IAM Richtlinien und Rollen in einem AWS Konto.

Das Diagramm zeigt den folgenden Workflow:

  1. Ein Entwickler schreibt JSON Dateien, die die Definitionen für die IAM Richtlinien und Rollen enthalten. Der Entwickler überträgt den Code in ein CodeCommit Repository und initiiert CodePipeline dann die RolesPipeline Pipeline.

  2. CodeBuild validiert die JSON Dateien mithilfe IAM von Access Analyzer. Wenn sicherheits- oder fehlerbezogene Ergebnisse vorliegen, wird der Bereitstellungsprozess gestoppt.

  3. Wenn keine sicherheits- oder fehlerbezogenen Ergebnisse vorliegen, werden die JSON Dateien an den S3-Bucket gesendet. RolesBucket

  4. Ein als AWS Lambda-Funktion implementiertes AWS CloudFormation Makro liest dann die JSON Dateien aus dem RolesBucket Bucket und wandelt sie in Ressourcentypen AWS CloudFormation IAM um.

  5. Ein vordefinierter AWS CloudFormation Stack installiert, aktualisiert oder löscht die IAM Richtlinien und Rollen im Konto. 

Automatisierung und Skalierung

AWS CloudFormation Vorlagen, die dieses Muster automatisch bereitstellen, werden im GitHub IAMRollen-Pipeline-Repository bereitgestellt.

Tools

  • AWSCommand Line Interface (AWSCLI) ist ein Open-Source-Tool, mit dem Sie mithilfe von Befehlen in Ihrer Befehlszeilen-Shell mit AWS Diensten interagieren können.

  • AWSMit Identity and Access Management (IAM) können Sie den Zugriff auf Ihre AWS Ressourcen sicher verwalten, indem Sie kontrollieren, wer authentifiziert und autorisiert ist, diese zu verwenden.

  • IAMAccess Analyzer hilft Ihnen dabei, die Ressourcen in Ihrer Organisation und Konten, wie z. B. S3-Buckets oder IAM Rollen, zu identifizieren, die mit einer externen Entität gemeinsam genutzt werden. Dies hilft Ihnen, unbeabsichtigten Zugriff auf Ihre Ressourcen und Daten zu identifizieren.

  • AWSServerless Application Model (AWSSAM) ist ein Open-Source-Framework, mit dem Sie serverlose Anwendungen in der Cloud erstellen können. AWS

Code

Der Quellcode und die Vorlagen für dieses Muster sind im GitHub IAMRollen-Pipeline-Repository verfügbar.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Klonen Sie das Beispiel-Repository.

Klonen Sie das GitHub IAMRollen-Pipeline-Repository auf Ihren lokalen Computer.

App-Entwickler, Allgemein AWS

Klonen Sie das Repository

AufgabeBeschreibungErforderliche Fähigkeiten

Klonen Sie das Beispiel-Repository.

Klonen Sie das GitHub IAMRollen-Pipeline-Repository auf Ihren lokalen Computer.

App-Entwickler, Allgemein AWS
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die Pipeline bereit.

  1. Navigieren Sie zu dem Verzeichnis, das das geklonte Repository enthält.

  2. Wichtig

    Führen Sie den make deploy bucket=<bucket_name> Befehl aus.: Sie müssen ihn <bucket_name> durch den Bucket-Namen für Ihren vorhandenen S3-Bucket ersetzen.

  3. Führen Sie den aws codepipeline get-pipeline –name RolesPipeline Befehl aus, um zu überprüfen, ob Ihre Bereitstellung erfolgreich ist.

App-Entwickler, Allgemein AWS

Klonen Sie das Repository der Pipeline.

  1. Der RolesPipeline AWS CloudFormation Stack erstellt das roles-pipeline-repo CodeCommit Repository.

  2. Melden Sie sich bei der AWS Management Console an, öffnen Sie die AWS CodeCommit Konsole und kopieren Sie dann die CodeCommit RepositorysURL, um sie auf Ihren lokalen Computer zu klonen. Weitere Informationen dazu finden Sie in der AWS CodeCommit Dokumentation unter Connect zu einem AWS CodeCommit Repository herstellen.

App-Entwickler, Allgemein AWS

Stellen Sie die RolesPipeline Pipeline bereit

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die Pipeline bereit.

  1. Navigieren Sie zu dem Verzeichnis, das das geklonte Repository enthält.

  2. Wichtig

    Führen Sie den make deploy bucket=<bucket_name> Befehl aus.: Sie müssen ihn <bucket_name> durch den Bucket-Namen für Ihren vorhandenen S3-Bucket ersetzen.

  3. Führen Sie den aws codepipeline get-pipeline –name RolesPipeline Befehl aus, um zu überprüfen, ob Ihre Bereitstellung erfolgreich ist.

App-Entwickler, Allgemein AWS

Klonen Sie das Repository der Pipeline.

  1. Der RolesPipeline AWS CloudFormation Stack erstellt das roles-pipeline-repo CodeCommit Repository.

  2. Melden Sie sich bei der AWS Management Console an, öffnen Sie die AWS CodeCommit Konsole und kopieren Sie dann die CodeCommit RepositorysURL, um sie auf Ihren lokalen Computer zu klonen. Weitere Informationen dazu finden Sie in der AWS CodeCommit Dokumentation unter Connect zu einem AWS CodeCommit Repository herstellen.

App-Entwickler, Allgemein AWS
AufgabeBeschreibungErforderliche Fähigkeiten

Testen Sie die RolesPipeline Pipeline mit gültigen IAM Richtlinien und Rollen.

  1. Erstellen Sie JSON Dateien für Ihre IAM Richtlinien und Rollen. Sie können die Beispiele im role-example Verzeichnis aus dem GitHub IAM roles pipeline Repository verwenden.

  2. Wichtig

    Definieren Sie Ihre IAM Richtlinien und Rollen mit den erforderlichen Konfigurationen. : Stellen Sie sicher, dass Sie das in der ReadMe Datei aus dem GitHub IAM roles pipeline Repository beschriebene Format einhalten.

  3. Schieben Sie die Änderungen in das roles-pipeline-repo CodeCommit Repository.

  4. Überprüfen Sie die Implementierung der RolesPipeline Pipeline.

  5. Stellen Sie sicher, dass die IAM Richtlinien und Rollen im Konto korrekt bereitgestellt sind.

  6. Überprüfen Sie, ob den IAM Richtlinien oder Rollen eine Berechtigungsgrenze zugeordnet ist. Weitere Informationen dazu finden Sie in der IAM Dokumentation unter Berechtigungsgrenzen für IAM Entitäten.

App-Entwickler, Allgemein AWS

Testen Sie die RolesPipeline Pipeline mit ungültigen IAM Richtlinien und Rollen.

  1. Ändern Sie das roles-pipeline-repo CodeCommit Repository und fügen Sie ungültige IAM Rollen oder Richtlinien hinzu. Sie können beispielsweise eine Aktion verwenden, die nicht existiert, oder eine ungültige IAM Richtlinienversion.

  2. Überprüfen Sie die Pipeline-Implementierung. IAM Access Analyzer stoppt die Pipeline während der Überprüfungsphase, wenn ungültige IAM Richtlinien oder Rollen erkannt werden.

App-Entwickler, Allgemein AWS

Testen Sie die RolesPipeline Pipeline

AufgabeBeschreibungErforderliche Fähigkeiten

Testen Sie die RolesPipeline Pipeline mit gültigen IAM Richtlinien und Rollen.

  1. Erstellen Sie JSON Dateien für Ihre IAM Richtlinien und Rollen. Sie können die Beispiele im role-example Verzeichnis aus dem GitHub IAM roles pipeline Repository verwenden.

  2. Wichtig

    Definieren Sie Ihre IAM Richtlinien und Rollen mit den erforderlichen Konfigurationen. : Stellen Sie sicher, dass Sie das in der ReadMe Datei aus dem GitHub IAM roles pipeline Repository beschriebene Format einhalten.

  3. Schieben Sie die Änderungen in das roles-pipeline-repo CodeCommit Repository.

  4. Überprüfen Sie die Implementierung der RolesPipeline Pipeline.

  5. Stellen Sie sicher, dass die IAM Richtlinien und Rollen im Konto korrekt bereitgestellt sind.

  6. Überprüfen Sie, ob den IAM Richtlinien oder Rollen eine Berechtigungsgrenze zugeordnet ist. Weitere Informationen dazu finden Sie in der IAM Dokumentation unter Berechtigungsgrenzen für IAM Entitäten.

App-Entwickler, Allgemein AWS

Testen Sie die RolesPipeline Pipeline mit ungültigen IAM Richtlinien und Rollen.

  1. Ändern Sie das roles-pipeline-repo CodeCommit Repository und fügen Sie ungültige IAM Rollen oder Richtlinien hinzu. Sie können beispielsweise eine Aktion verwenden, die nicht existiert, oder eine ungültige IAM Richtlinienversion.

  2. Überprüfen Sie die Pipeline-Implementierung. IAM Access Analyzer stoppt die Pipeline während der Überprüfungsphase, wenn ungültige IAM Richtlinien oder Rollen erkannt werden.

App-Entwickler, Allgemein AWS
AufgabeBeschreibungErforderliche Fähigkeiten

Bereite dich auf die Säuberung vor.

Leeren Sie die S3-Buckets und führen Sie dann den destroy Befehl aus.

App-Entwickler, Allgemein AWS

Lösche den RolesStack Stapel.

  1. Die RolesPipeline Pipeline erstellt einen RolesStack AWS CloudFormation Stack, der die IAM Richtlinien und Rollen bereitstellt. Sie müssen diesen Stack löschen, bevor Sie die RolesPipeline Pipeline löschen.

  2. Melden Sie sich bei der AWS Management Console an, öffnen Sie die AWS CloudFormation Konsole, wählen Sie dann den RolesStack Stack und dann Löschen aus.

App-Entwickler, Allgemein AWS

Lösche den RolesPipeline Stapel.

Um den RolesPipeline AWS CloudFormation Stack zu löschen, folgen Sie den Anweisungen in der ReadMeDatei im IAM roles pipeline Github-Repository.

App-Entwickler, Allgemein AWS

Bereinigen Ihrer Ressourcen

AufgabeBeschreibungErforderliche Fähigkeiten

Bereite dich auf die Säuberung vor.

Leeren Sie die S3-Buckets und führen Sie dann den destroy Befehl aus.

App-Entwickler, Allgemein AWS

Lösche den RolesStack Stapel.

  1. Die RolesPipeline Pipeline erstellt einen RolesStack AWS CloudFormation Stack, der die IAM Richtlinien und Rollen bereitstellt. Sie müssen diesen Stack löschen, bevor Sie die RolesPipeline Pipeline löschen.

  2. Melden Sie sich bei der AWS Management Console an, öffnen Sie die AWS CloudFormation Konsole, wählen Sie dann den RolesStack Stack und dann Löschen aus.

App-Entwickler, Allgemein AWS

Lösche den RolesPipeline Stapel.

Um den RolesPipeline AWS CloudFormation Stack zu löschen, folgen Sie den Anweisungen in der ReadMeDatei im IAM roles pipeline Github-Repository.

App-Entwickler, Allgemein AWS

Zugehörige Ressourcen

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.