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.
IAM-Tutorial: Verwenden von SAML-Sitzungs-Tags für ABAC
Die attributbasierte Zugriffskontrolle (ABAC) ist eine Autorisierungsstrategie, bei der Berechtigungen basierend auf Attributen definiert werden. In AWS werden diese Attribute als Tags bezeichnet. Sie können Tags an IAM-Ressourcen, einschließlich IAM-Entitäten (Benutzer oder Rollen), und an AWS Ressourcen anhängen. Wenn die Entitäten für Anfragen verwendet werden, werden sie zu Principals AWS, und diese Principals enthalten Tags.
Sie können Sitzungs-Tags auch übergeben, wenn Sie eine Rolle übernehmen oder einen Benutzer in einen Verbund aufnehmen. Anschließend können Sie Richtlinien definieren, die Tag-Bedingungsschlüssel verwenden, um Ihren Auftraggeber basierend auf ihren Tags Berechtigungen zu erteilen. Wenn Sie Tags verwenden, um den Zugriff auf Ihre AWS -Ressourcen zu steuern, erlauben Sie Ihren Teams und Ressourcen das Wachsen, ohne dass viele Änderungen an AWS -Richtlinien vorgenommen werden müssen. ABAC-Richtlinien sind flexibler als herkömmliche AWS Richtlinien, bei denen Sie jede einzelne Ressource auflisten müssen. Weitere Informationen zu ABAC und seinen Vorteilen gegenüber herkömmlichen Richtlinien finden Sie unter ABACAutorisierung.
Wenn Ihr Unternehmen einen SAML-basierten Identitätsanbieter (IdP) verwendet, um Unternehmens-Benutzeridentitäten zu verwalten, können Sie SAML-Attribute für eine differenzierte Zugriffskontrolle in AWS verwenden. Zu den Attributen können Kostenstellenkennungen, Benutzer-E-Mail-Adressen, Abteilungsklassifizierungen und Projektzuweisungen gehören. Wenn Sie diese Attribute als Sitzungs-Tags übergeben, können Sie den Zugriff auf AWS basierend auf diesen Sitzungs-Tags steuern.
Um zum Abschluss des ABAC-Tutorials SAML-Attribute an den Sitzungsauftraggeber zu übergeben, führen Sie die Aufgaben in IAMTutorial: Definieren Sie Berechtigungen für den Zugriff auf AWS Ressourcen auf der Grundlage von Tags mit den in diesem Thema enthaltenen Änderungen.
Voraussetzungen
Um die Schritte zur Verwendung von SAML-Sitzungs-Tags für ABAC durchzuführen, müssen Sie bereits über Folgendes verfügen:
-
Zugriff auf einen SAML-basierten Identitätsanbieter, bei dem Sie Testbenutzer mit bestimmten Attributen erstellen können.
-
Die Fähigkeit zum Anmelden als ein Benutzer mit Administratorberechtigung.
-
Erfahrung mit dem Erstellen und Bearbeiten von IAM-Benutzern, -Rollen und Richtlinien in der AWS Management Console. Wenn Sie jedoch Hilfe benötigen, um sich an einen IAM-Verwaltungsprozess zu erinnern, finden Sie im ABAC-Tutorial Links, über die Sie Anweisungen einsehen können. step-by-step
-
Erfahrung mit dem Einrichten eines SAML-basierten Identitätsanbieters in IAM. Weitere Details und Links zur ausführlichen IAM-Dokumentation finden Sie unter Übergabe von Sitzungs-Tags mit AssumeRoleWith SAML.
Schritt 1: Erstellen von Testbenutzern
Überspringen Sie die Anweisungen in Schritt 1: Erstellen von Testbenutzern. Da Ihre Identitäten bei Ihrem Anbieter definiert sind, müssen Sie keine IAM-Benutzer für Ihre Mitarbeiter hinzufügen.
Schritt 2: Erstellen der ABAC-Richtlinie
Befolgen Sie die Anweisungen unter Schritt 2: Erstellen Sie die Richtlinie ABAC, um die angegebene verwaltete Richtlinie in IAM zu erstellen.
Schritt 3: Erstellen und Konfigurieren der SAML-Rolle
Wenn Sie das ABAC-Tutorial für SAML verwenden, müssen Sie zusätzliche Schritte ausführen, um die Rolle zu erstellen, den SAML-IdP zu konfigurieren und den Zugriff zu aktivieren. AWS Management Console Weitere Informationen finden Sie unter Schritt 3: Erstellen von Rollen.
Schritt 3A: Erstellen der SAML-Rolle
Erstellen Sie eine einzelne Rolle, die Ihrem SAML-Identitätsanbieter und dem IAM-Benutzer test-session-tags
vertraut, den Sie in Schritt 1 erstellt haben. Das ABAC-Tutorial verwendet separate Rollen mit unterschiedlichen Rollen-Tags. Da Sie Sitzungs-Tags von Ihrem SAML-Identitätsanbieter übergeben, benötigen Sie nur eine Rolle. Informationen zum Erstellen einer SAML-basierten Rolle finden Sie unter Eine Rolle für den SAML 2.0-Verbund erstellen (Konsole).
Benennen Sie die Rolle access-session-tags
. Fügen Sie die Berechtigungsrichtlinie access-same-project-team
der Rolle an. Bearbeiten Sie die Rollenvertrauensrichtlinie, um die folgende Richtlinie zu verwenden. Ausführliche Anweisungen zum Bearbeiten der Vertrauensstellung einer Rolle finden Sie unter Ändern einer Rolle (Konsole).
Mit der folgenden Rollenvertrauensrichtlinie können Ihr SAML-Identitätsanbieter und der test-session-tags
-Benutzer die Rolle übernehmen. Wenn sie die Rolle übernehmen, müssen sie die drei angegebenen Sitzungs-Tags übergeben. Die sts:TagSession
-Aktion ist erforderlich, um die Übergabe von Sitzungs-Tags zu ermöglichen.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSamlIdentityAssumeRole", "Effect": "Allow", "Action": [ "sts:AssumeRoleWithSAML", "sts:TagSession" ], "Principal": {"Federated":"arn:aws:iam::
123456789012
:saml-provider/ExampleCorpProvider
"}, "Condition": { "StringLike": { "aws:RequestTag/cost-center
": "*", "aws:RequestTag/access-project
": "*", "aws:RequestTag/access-team
": [ "eng
", "qas
" ] }, "StringEquals": {"SAML:aud": "https://signin.aws.amazon.com/saml"} } } ] }
Die AllowSamlIdentityAssumeRole
Erklärung ermöglicht es Mitgliedern der Engineering- und Qualitätssicherungsteams, diese Rolle zu übernehmen, wenn sie sich zum IdP AWS der Example Corporation zusammenschließen. Der SAML-Anbieter ExampleCorpProvider
ist in IAM definiert. Der Administrator hat die SAML-Zusicherung bereits so eingerichtet, dass die drei erforderlichen Sitzungs-Tags übergeben werden. Die Zusicherung kann zusätzliche Tags übergeben, aber diese drei müssen vorhanden sein. Die Attribute der Identität können einen beliebigen Wert für die Tagscost-center
und access-project
haben. Der Wert des Attributs access-team
muss jedoch eng
oder qas
entsprechen, um anzugeben, dass sich die Identität im Engineering- oder Qualitätssicherungsteam befindet.
Schritt 3B: Konfigurieren des SAML-Identitätsanbieters
Konfigurieren Sie Ihren SAML-Identitätsanbieter so, dass die Attribute cost-center
, access-project
undaccess-team
als Sitzungs-Tags übergeben werden. Weitere Informationen finden Sie unter Übergabe von Sitzungs-Tags mit AssumeRoleWith SAML.
Um diese Attribute als Sitzungs-Tags zu übergeben, schließen Sie die folgenden Elemente in Ihre SAML-Zusicherung ein.
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:cost-center"> <AttributeValue>987654</AttributeValue> </Attribute> <Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:access-project"> <AttributeValue>peg</AttributeValue> </Attribute> <Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:access-team"> <AttributeValue>eng</AttributeValue> </Attribute>
Schritt 3C: Aktivieren des Konsolenzugriffs
Aktivieren Sie den Konsolenzugriff für Ihre verbundenen SAML-Benutzer. Weitere Informationen finden Sie unter Aktivieren des Zugriffs von SAML 2.0-Verbundbenutzern auf AWS Management Console.
Schritt 4: Testen der Erstellung von Secrets
Schließen Sie sich der Rolle an, die diese Rolle AWS Management Console verwendet. access-session-tags
Weitere Informationen finden Sie unter Aktivieren des Zugriffs von SAML 2.0-Verbundbenutzern auf AWS Management Console. Folgen Sie dann den Anweisungen in Schritt 4: Testen der Erstellung von Secrets, um Secrets zu erstellen. Verwenden Sie verschiedene SAML-Identitäten mit Attributen, um den im ABAC-Tutorial angegebenen Tags zu entsprechen. Weitere Informationen finden Sie unter Schritt 4: Testen der Erstellung von Secrets.
Schritt 5: Testen der Anzeige von Secrets
Folgen Sie den Anweisungen in Schritt 5: Testen der Anzeige von Secrets, um die Secrets anzuzeigen, die Sie im vorherigen Schritt erstellt haben. Verwenden Sie verschiedene SAML-Identitäten mit Attributen, um den im ABAC-Tutorial angegebenen Tags zu entsprechen.
Schritt 6: Testen der Skalierbarkeit
Befolgen Sie die Anweisungen in Schritt 6: Testen der Skalierbarkeit, um die Skalierbarkeit zu testen. Fügen Sie dazu eine neue Identität mit den folgenden Attributen bei Ihrem SAML-basierten Identitätsanbieter hinzu:
-
cost-center = 101010
-
access-project = cen
-
access-team = eng
Schritt 7: Testen des Aktualisierens und Löschens von Secrets
Folgen Sie den Anweisungen in Schritt 7: Testen des Aktualisierens und Löschens von Secrets, um Secrets zu aktualisieren und zu löschen. Verwenden Sie verschiedene SAML-Identitäten mit Attributen, um den im ABAC-Tutorial angegebenen Tags zu entsprechen.
Wichtig
Löschen Sie alle Secrets, die Sie erstellt haben, um Abrechnungsgebühren zu vermeiden. Informationen zu den Preisen in Secrets Manager finden Sie unter AWS Secrets Manager -Preise
Übersicht
Sie haben nun alle Schritte erfolgreich abgeschlossen, die erforderlich sind, um SAML-Sitzungstags und Ressourcen-Tags für die Berechtigungsverwaltung verwenden zu können.
Anmerkung
Sie haben Richtlinien hinzugefügt, die Aktionen nur unter bestimmten Bedingungen zulassen. Wenn Sie eine andere Richtlinie auf Ihre Benutzer oder Rollen anwenden, die über breitere Berechtigungen verfügen, sind die Aktionen möglicherweise nicht auf Tagging beschränkt. Wenn Sie einem Benutzer beispielsweise mithilfe der AdministratorAccess
AWS verwalteten Richtlinie vollständige Administratorrechte gewähren, wird dieser Zugriff durch diese Richtlinien nicht eingeschränkt. Weitere Informationen dazu, wie Berechtigungen festgelegt werden, wenn mehrere Richtlinien beteiligt sind, finden Sie unter Ermitteln, ob eine Anforderung innerhalb eines Kontos zugelassen oder verweigert wird.