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.
So erstellen, aktualisieren und löschen Sie Service-Kontrollrichtlinien
Wenn Sie sich beim Verwaltungskonto Ihrer Organisation anmelden, können Sie Richtlinien zur Servicesteuerung erstellen und aktualisieren (SCPs). Sie erstellen, SCPs indem Sie Anweisungen erstellen, die den Zugriff auf von Ihnen angegebene Dienste und Aktionen verweigern oder zulassen.
Die Standardkonfiguration für die Arbeit SCPs besteht darin, eine „Blockliste“ -Strategie zu verwenden, bei der alle Aktionen implizit erlaubt sind, mit Ausnahme der Aktionen, die Sie blockieren möchten, indem Sie Anweisungen erstellen, die den Zugriff verweigern. Mit Deny-Anweisungen können Sie Ressourcen und Bedingungen für die Anweisung angeben und das NotActionElement verwenden. Bei Anweisungen mit Zugriffserlaubnis ("Allow") können Sie nur Services und Aktionen angeben. Weitere Informationen zu Anweisungen, die den Zugriff verweigern und den Zugriff erlauben, finden Sie unter SCPBewertung.
Erstellen einer SCP
Zum Erstellen SCPs benötigen Sie die Erlaubnis, die folgende Aktion auszuführen:
- AWS Management Console
-
So erstellen Sie eine Service-Kontrollrichtlinie
-
Melden Sie sich an der AWS Organizations -Konsole an. Sie müssen sich im Verwaltungskonto der Organisation als IAM Benutzer anmelden, eine IAM Rolle annehmen oder sich als Root-Benutzer (nicht empfohlen) anmelden.
-
Wählen Sie auf der Seite Service-Kontrollrichtlinien die Option Richtlinie erstellen aus.
-
Geben Sie auf der Seite Neue Service-Kontrollrichtlinie erstellen einen Richtliniennamen und eine optionale Richtlinienbeschreibung ein.
-
(Optional) Fügen Sie ein oder mehrere Tags hinzu, indem Sie Tag hinzufügen auswählen und dann einen Schlüssel und einen optionalen Wert eingeben. Wenn Sie den Wert leer lassen, wird er auf eine leere Zeichenfolge gesetzt; er ist nicht null
. Sie können einer Richtlinie bis zu 50 Tags hinzufügen. Weitere Informationen finden Sie unter Markieren von AWS Organizations-Ressourcen.
In den meisten der folgenden Schritte wird die Verwendung der Steuerelemente auf der rechten Seite des JSON Editors erläutert, um die Richtlinie Element für Element zu erstellen. Alternativ können Sie jederzeit einfach Text in den JSON Editor auf der linken Seite des Fensters eingeben. Sie können direkt eingeben oder kopieren und einfügen.
-
Bei der Erstellung der Richtlinie hängen Ihre nächsten Schritte davon ab, ob Sie eine Anweisung hinzufügen möchten, die den Zugriff verweigert oder zulässt. Weitere Informationen finden Sie unter SCPBewertung. Wenn Sie Deny
Anweisungen verwenden, haben Sie zusätzliche Kontrolle, da Sie den Zugriff auf bestimmte Ressourcen einschränken, Bedingungen für die SCPs Gültigkeitsdauer definieren und das NotActionElement verwenden können. Weitere Informationen zur Syntax finden Sie unter SCP-Syntax.
So fügen Sie eine Anweisung hinzu, die den Zugriff verweigert:
-
Wählen Sie im rechten Bereich „Anweisung bearbeiten“ des Editors unter Aktionen hinzufügen einen AWS Dienst aus.
Wenn Sie auf der rechten Seite Optionen auswählen, wird der JSON Editor aktualisiert und zeigt die entsprechende JSON Richtlinie auf der linken Seite an.
-
Nachdem Sie einen Service ausgewählt haben, wird eine Liste mit den verfügbaren Aktionen für diesen Service geöffnet. Sie können Alle Aktionen auswählen oder eine oder mehrere einzelne Aktionen auswählen, die Sie verweigern möchten.
Die Option JSON auf der linken Seite wird aktualisiert und enthält nun die von Ihnen ausgewählten Aktionen.
Wenn Sie eine einzelne Aktion auswählen und dann ebenfalls zurückgehen und ebenfalls Alle Aktionen auswählen, servicename
/*
wird der erwartete Eintrag für zu hinzugefügtJSON, aber die einzelnen Aktionen, die Sie zuvor ausgewählt haben, bleiben in der JSON und werden nicht entfernt.
-
Wenn Sie Aktionen von zusätzlichen Services hinzufügen möchten, können Sie oben im Feld Anweisung Alle Services auswählen und dann die vorherigen beiden Schritte nach Bedarf wiederholen.
-
Geben Sie die Ressourcen für die Anweisung an.
-
Wählen Sie neben Eine Ressource hinzufügen die Option Hinzufügen aus.
-
Wählen Sie im Dialogfeld Ressource hinzufügen den Service, dessen Ressourcen Sie steuern möchten, aus der Liste aus. Sie können nur unter den Services auswählen, die Sie im vorherigen Schritt ausgewählt haben.
-
Wählen Sie unter Ressourcentyp den Ressourcentyp aus, den Sie steuern möchten.
-
Füllen Sie abschließend den Amazon-Ressourcennamen (ARN) im Feld Ressource ausARN, um die spezifische Ressource zu identifizieren, auf die Sie den Zugriff kontrollieren möchten. Sie müssen alle Platzhalter ersetzen, die von geschweiften Klammern {}
umgeben sind. Sie können Platzhalter (*
) angeben, sofern die ARN Syntax dieses Ressourcentyps dies zulässt. Informationen darüber, wo Sie Platzhalter verwenden können, finden Sie in der Dokumentation zu einem bestimmten Ressourcentyp.
-
Speichern Sie Ihre Ergänzung zur Richtlinie, indem Sie Ressource hinzufügen auswählen. Das Resource
Element in der JSON spiegelt Ihre Ergänzungen oder Änderungen wider. Das Ressourcenelement ist erforderlich.
Wenn Sie alle Ressourcen für den ausgewählten Dienst angeben möchten, wählen Sie entweder die Option Alle Ressourcen in der Liste aus, oder bearbeiten Sie die Resource
Anweisung direkt in der JSON zu lesenden Datei"Resource":"*"
.
-
(Optional) Um Bedingungen anzugeben, die die Gültigkeit einer Richtlinienanweisung einschränken, wählen Sie neben Bedingung hinzufügen die Option Hinzufügen aus.
-
Bedingungsschlüssel — Aus der Liste können Sie einen beliebigen Bedingungsschlüssel auswählen, der für alle AWS Dienste verfügbar ist (z. B.aws:SourceIp
), oder einen dienstspezifischen Schlüssel für nur einen der Dienste, die Sie für diese Anweisung ausgewählt haben.
-
Qualifizierer – (Optional) Wenn Sie mehrere Werte für die Bedingung angeben (abhängig vom angegebenen Bedingungsschlüssel), können Sie einen Qualifizierer zum Testen von Anforderungen mit den Werten angeben.
-
Standard – Testet einen einzelnen Wert in der Anforderung gegen den Bedingungsschlüsselwert in der Richtlinie. Die Bedingung gibt „true“ zurück, wenn der Wert in der Anfrage mit dem Wert in der Richtlinie übereinstimmt. Wenn die Richtlinie mehr als einen Wert angibt, werden sie als „oder“-Test behandelt, und die Bedingung gibt true zurück, wenn die Anforderungswerte mit einem der Richtlinienwerte übereinstimmen.
-
Für jeden Wert in einer Anforderung – Wenn die Anforderung mehrere Werte haben kann, testet diese Option, ob mindestens einer der Anforderungswerte mit mindestens einem der Bedingungsschlüsselwerte in der Richtlinie übereinstimmt. Die Bedingung gibt "true" zurück, wenn ein Schlüsselwert in der Anforderung einem Bedingungswert in der Richtlinie entspricht. Bei keinem passenden Schlüssel oder einem leeren Datensatz gibt die Bedingung "false" zurück.
-
Für alle Werte in einer Anforderung – Wenn die Anforderung mehrere Werte haben kann, testet diese Option, ob jeder Anforderungswert einem Bedingungsschlüsselwert in der Richtlinie entspricht. Die Bedingung gibt "true" zurück, wenn jeder Schlüsselwert in der Anforderung mindestens einem Wert in der Richtlinie entspricht. „true“ wird zudem zurückgegeben, wenn keine Schlüssel in der Anforderung vorhanden sind oder wenn die Schlüsselwerte zu einem Null-Dataset aufgelöst werden, z. B. einer leeren Zeichenfolge.
-
Operator – Der Operator gibt die Art des durchzuführenden Vergleichs an. Die angezeigten Optionen hängen vom Datentyp des Bedingungsschlüssels ab. Mit dem globalen Bedingungsschlüssel aws:CurrentTime
können Sie beispielsweise einen der Datumsvergleichsoperatoren oder Null
auswählen, mit denen Sie testen können, ob der Wert in der Anforderung vorhanden ist.
Für jeden Bedingungsoperator mit Ausnahme des Null
Tests können Sie die IfExistsOption wählen.
-
Wert – (Optional) Geben Sie einen oder mehrere Werte an, für die Sie die Anforderung testen möchten.
Klicken Sie auf Bedingung hinzufügen.
Weitere Informationen zu Bedingungsschlüsseln finden Sie unter IAMJSONPolicy Elements: Condition im IAMBenutzerhandbuch.
-
(Optional) Um das Element NotAction
zu verwenden, um den Zugriff auf alle Aktionen mit Ausnahme der angegebenen zu verweigern, ersetzen SieAction
im linken Bereich direkt nach dem Element "Effect":
"Deny",
durch NotAction
. Weitere Informationen finden Sie unter IAMJSONPolicy Elements: NotAction im IAMBenutzerhandbuch.
-
So fügen Sie eine Anweisung hinzu, die den Zugriff erlaubt:
-
Ändern Sie im JSON Editor auf der linken Seite die Zeile "Effect": "Deny"
in"Effect":
"Allow"
.
Wenn Sie Optionen auf der rechten Seite auswählen, wird der JSON Editor aktualisiert und zeigt die entsprechende JSON Richtlinie auf der linken Seite an.
-
Nachdem Sie einen Service ausgewählt haben, wird eine Liste mit den verfügbaren Aktionen für diesen Service geöffnet. Sie können Alle Aktionen auswählen oder eine oder mehrere einzelne Aktionen auswählen, die Sie zulassen möchten.
Die Option JSON auf der linken Seite wird aktualisiert und enthält nun die von Ihnen ausgewählten Aktionen.
Wenn Sie eine einzelne Aktion auswählen und dann ebenfalls zurückgehen und ebenfalls Alle Aktionen auswählen, servicename
/*
wird der erwartete Eintrag für zu hinzugefügtJSON, aber die einzelnen Aktionen, die Sie zuvor ausgewählt haben, bleiben in der JSON und werden nicht entfernt.
-
Wenn Sie Aktionen von zusätzlichen Services hinzufügen möchten, können Sie oben im Feld Anweisung Alle Services auswählen und dann die vorherigen beiden Schritte nach Bedarf wiederholen.
-
(Optional) Wenn Sie der Richtlinie eine weitere Anweisung hinzufügen möchten, wählen Sie Add statement (Anweisung hinzufügen) aus und verwenden Sie den visuellen Editor, um die nächste Anweisung zu erstellen.
-
Wenn Sie mit dem Hinzufügen von Kontoauszügen fertig sind, wählen Sie Richtlinie erstellen aus, um die ausgefüllten Informationen zu speichernSCP.
Ihre neue SCP wird in der Liste der Richtlinien der Organisation angezeigt. Sie können jetzt Ihre Konten SCP an das Stammkonto oder an das OUs Stammkonto anhängen.
- AWS CLI & AWS SDKs
-
So erstellen Sie eine Service-Kontrollrichtlinie
Sie können einen der folgenden Befehle verwenden, um ein zu erstellenSCP:
-
AWS CLI: create-policy
Im folgenden Beispiel wird davon ausgegangen, dass Sie eine Datei Deny-IAM.json
mit dem JSON Richtlinientext benannt haben. Sie verwendet diese Datei, um eine neue Service-Kontrollrichtlinie zu erstellen.
$
aws organizations create-policy \
--content file://Deny-IAM.json \
--description "Deny all IAM actions" \
--name DenyIAMSCP \
--type SERVICE_CONTROL_POLICY
{
"Policy": {
"PolicySummary": {
"Id": "p-i9j8k7l6m5",
"Arn": "arn:aws:organizations::123456789012:policy/o-aa111bb222/service_control_policy/p-i9j8k7l6m5",
"Name": "DenyIAMSCP",
"Description": "Deny all IAM actions",
"Type": "SERVICE_CONTROL_POLICY",
"AwsManaged": false
},
"Content": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Statement1\",\"Effect\":\"Deny\",\"Action\":[\"iam:*\"],\"Resource\":[\"*\"]}]}"
}
}
-
AWS SDKs: CreatePolicy
Aktualisierung eines SCP
Wenn Sie am Verwaltungskonto der Organisation angemeldet sind, können Sie eine Richtlinie umbenennen oder ändern. Das Ändern des Inhalts eines wirkt sich SCP sofort auf alle Benutzer, Gruppen und Rollen in allen angehängten Konten aus.
Um eine zu aktualisierenSCP, benötigen Sie die Erlaubnis, die folgenden Aktionen auszuführen:
-
organizations:UpdatePolicy
mit einem Resource
Element in derselben Grundsatzerklärung, das das Element ARN der angegebenen Richtlinie enthält (oder „*“)
-
organizations:DescribePolicy
mit einem Resource
Element in derselben Grundsatzerklärung, das das Element ARN der angegebenen Richtlinie enthält (oder „*“)
- AWS Management Console
-
So aktualisieren Sie eine Richtlinie
-
Melden Sie sich an der AWS Organizations -Konsole an. Sie müssen sich als IAM Benutzer anmelden, eine IAM Rolle übernehmen oder sich als Root-Benutzer (nicht empfohlen) im Verwaltungskonto der Organisation anmelden.
-
Wählen Sie auf der Seite Service-Kontrollrichtlinien den Namen der Richtlinie aus, die Sie aktualisieren möchten.
-
Wählen Sie auf der Detailseite der Richtlinie Richtlinie bearbeiten aus.
-
Nehmen Sie eine oder alle der folgenden Änderungen vor:
-
Sie können die Richtlinie umbenennen, indem Sie unter Richtlinienname einen neuen Namen eingeben.
-
Sie können die Beschreibung ändern, indem Sie einen neuen Text in der Richtlinienbeschreibung eingeben.
-
Sie können den Richtlinientext bearbeiten, indem Sie die Richtlinie im JSON Format im linken Bereich bearbeiten. Alternativ können Sie im Editor auf der rechten Seite eine Anweisung auswählen und deren Elemente ebenfalls über die Steuerelemente ändern. Weitere Informationen zu den einzelnen Steuerelementen finden Sie unter SCPVerfahren erstellen weiter oben in diesem Thema.
-
Wenn Sie fertig sind, wählen Sie Änderungen speichern aus.
- AWS CLI & AWS SDKs
-
So aktualisieren Sie eine Richtlinie
Sie können zum Aktualisieren einer Richtlinie einen der folgenden Befehle verwenden:
-
AWS CLI: update-policy
Im folgenden Beispiel wird eine Richtlinie umbenannt.
$
aws organizations update-policy \
--policy-id p-i9j8k7l6m5 \
--name "MyRenamedPolicy"
{
"Policy": {
"PolicySummary": {
"Id": "p-i9j8k7l6m5",
"Arn": "arn:aws:organizations::123456789012:policy/o-aa111bb222/service_control_policy/p-i9j8k7l6m5",
"Name": "MyRenamedPolicy",
"Description": "Blocks all IAM actions",
"Type": "SERVICE_CONTROL_POLICY",
"AwsManaged": false
},
"Content": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Statement1\",\"Effect\":\"Deny\",\"Action\":[\"iam:*\"],\"Resource\":[\"*\"]}]}"
}
}
Im folgenden Beispiel wird die Beschreibung einer Service-Kontrollrichtlinie hinzugefügt oder geändert.
$
aws organizations update-policy \
--policy-id p-i9j8k7l6m5 \
--description "My new policy description"
{
"Policy": {
"PolicySummary": {
"Id": "p-i9j8k7l6m5",
"Arn": "arn:aws:organizations::123456789012:policy/o-aa111bb222/service_control_policy/p-i9j8k7l6m5",
"Name": "MyRenamedPolicy",
"Description": "My new policy description",
"Type": "SERVICE_CONTROL_POLICY",
"AwsManaged": false
},
"Content": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Statement1\",\"Effect\":\"Deny\",\"Action\":[\"iam:*\"],\"Resource\":[\"*\"]}]}"
}
}
Im folgenden Beispiel wird das Richtliniendokument von geändert, SCP indem eine Datei angegeben wird, die den neuen JSON Richtlinientext enthält.
$
aws organizations update-policy \
--policy-id p-zlfw1r64
--content file://MyNewPolicyText.json
{
"Policy": {
"PolicySummary": {
"Id": "p-i9j8k7l6m5",
"Arn": "arn:aws:organizations::123456789012:policy/o-aa111bb222/service_control_policy/p-i9j8k7l6m5",
"Name": "MyRenamedPolicy",
"Description": "My new policy description",
"Type": "SERVICE_CONTROL_POLICY",
"AwsManaged": false
},
"Content": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"AModifiedPolicy\",\"Effect\":\"Deny\",\"Action\":[\"iam:*\"],\"Resource\":[\"*\"]}]}"
}
}
-
AWS SDKs: UpdatePolicy
Weitere Informationen
Weitere Informationen zum Erstellen SCPs finden Sie in den folgenden Themen:
Bearbeiten von Tags, die an eine angehängt sind SCP
Wenn Sie sich beim Verwaltungskonto Ihrer Organisation anmelden, können Sie die mit einem verbundenen Tags hinzufügen oder entfernenSCP. Weitere Informationen über das Markieren mit Tags finden Sie unter Markieren von AWS Organizations-Ressourcen.
Um die Tags zu bearbeiten, die an ein SCP in Ihrer AWS Organisation angehängt sind, benötigen Sie die folgenden Berechtigungen:
-
organizations:DescribeOrganization
– nur erforderlich, wenn Sie die Organizations-Konsole verwenden
-
organizations:DescribePolicy
– nur erforderlich, wenn Sie die Organizations-Konsole verwenden
-
organizations:TagResource
-
organizations:UntagResource
- AWS Management Console
-
Um die an eine angehängten Tags zu bearbeiten SCP
-
Melden Sie sich an der AWS Organizations -Konsole an. Sie müssen sich im Verwaltungskonto der Organisation als IAM Benutzer anmelden, eine IAM Rolle übernehmen oder sich als Root-Benutzer (nicht empfohlen) anmelden.
-
Wählen Sie auf der Seite Service-Kontrollrichtlinien den Namen der Richtlinie mit den Tags aus, die Sie bearbeiten möchten.
-
Wählen Sie auf der Seite mit den Richtliniendetails die Registerkarte Tags und dann Tags verwalten aus.
-
Nehmen Sie eine oder alle der folgenden Änderungen vor:
-
Ändern Sie den Wert eines Tags, indem Sie einen neuen Wert über dem alten Wert eingeben. Sie können den Tag-Schlüssel nicht direkt ändern. Um einen Schlüssel zu ändern, müssen Sie das Tag mit dem alten Schlüssel löschen und dann ein Tag mit dem neuen Schlüssel hinzufügen.
-
Entfernen Sie ein vorhandenes Tag, indem Sie Entfernen wählen.
-
Fügen Sie ein neues Tag-Schlüssel-Wert-Paar hinzu. Wählen Sie Tag hinzufügen aus und geben Sie dann den neuen Schlüsselnamen und den optionalen Wert in die bereitgestellten Felder ein. Wenn Sie das Feld Wert leer lassen, ist der Wert eine leere Zeichenfolge; er ist nicht null
.
-
Wenn Sie fertig sind, wählen Sie Änderungen speichern aus.
- AWS CLI & AWS SDKs
-
Um die an eine angehängten Tags zu bearbeiten SCP
Sie können einen der folgenden Befehle verwenden, um die an eine angehängten Tags zu bearbeitenSCP:
Löschen eines SCP
Wenn Sie am Verwaltungskonto Ihrer Organisation angemeldet sind, können Sie eine Richtlinie löschen, die Sie in Ihrer Organisation nicht mehr benötigen.
-
Bevor Sie eine Richtlinie löschen können, müssen Sie sie zuerst von allen angehängten Elementen trennen.
-
Sie können keine AWS verwalteten Dateien SCP wie die SCP genannten löschenFullAWSAccess
.
Um eine zu löschenSCP, benötigen Sie die Erlaubnis, die folgende Aktion auszuführen:
So löschen Sie einen SCP
-
Melden Sie sich an der AWS Organizations -Konsole an. Sie müssen sich im Verwaltungskonto der Organisation als IAM Benutzer anmelden, eine IAM Rolle annehmen oder sich als Root-Benutzer anmelden (nicht empfohlen).
-
Wählen Sie auf der Seite Service Control-Richtlinien den Namen der Richtlinien ausSCP, die Sie löschen möchten.
-
Sie müssen zuerst die Richtlinie, die Sie löschen möchten, von allen Roots- OUs und Benutzerkonten trennen. Wählen Sie die Registerkarte Ziele aus, wählen Sie das Optionsfeld neben jedem Stamm, jeder OU oder jedem Konto aus, die in der Liste Ziele angezeigt werden und wählen Sie dann Trennen. Wählen Sie im Bestätigungsdialogfeld Trennen aus. Wiederholen Sie dies, bis Sie alle Ziele entfernt haben.
-
Wählen Sie oben auf der Seite Löschen.
-
Geben Sie im Bestätigungsdialogfeld den Namen der Richtlinie ein und wählen Sie dann Löschen aus.
Um eine zu löschen SCP
Die folgenden Codebeispiele zeigen, wie manDeletePolicy
.
- .NET
-
- AWS SDK for .NET
-
Es gibt noch mehr dazu GitHub. Sie sehen das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel-Repository einrichten und ausführen.
using System;
using System.Threading.Tasks;
using Amazon.Organizations;
using Amazon.Organizations.Model;
/// <summary>
/// Deletes an existing AWS Organizations policy.
/// </summary>
public class DeletePolicy
{
/// <summary>
/// Initializes the Organizations client object and then uses it to
/// delete the policy with the specified policyId.
/// </summary>
public static async Task Main()
{
// Create the client object using the default account.
IAmazonOrganizations client = new AmazonOrganizationsClient();
var policyId = "p-00000000";
var request = new DeletePolicyRequest
{
PolicyId = policyId,
};
var response = await client.DeletePolicyAsync(request);
if (response.HttpStatusCode == System.Net.HttpStatusCode.OK)
{
Console.WriteLine($"Successfully deleted Policy: {policyId}.");
}
else
{
Console.WriteLine($"Could not delete Policy: {policyId}.");
}
}
}
- CLI
-
- AWS CLI
-
Um eine Richtlinie zu löschen
Das folgende Beispiel zeigt, wie eine Richtlinie aus einer Organisation gelöscht wird. Das Beispiel geht davon aus, dass Sie die Richtlinie zuvor von allen Entitäten getrennt haben:
aws organizations delete-policy --policy-id p-examplepolicyid111
- Python
-
- SDKfür Python (Boto3)
-
Es gibt noch mehr dazu. GitHub Sie sehen das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel-Repository einrichten und ausführen.
def delete_policy(policy_id, orgs_client):
"""
Deletes a policy.
:param policy_id: The ID of the policy to delete.
:param orgs_client: The Boto3 Organizations client.
"""
try:
orgs_client.delete_policy(PolicyId=policy_id)
logger.info("Deleted policy %s.", policy_id)
except ClientError:
logger.exception("Couldn't delete policy %s.", policy_id)
raise