Vereinfachte AWS-Service Informationen für den programmatischen Zugriff - Service-Authorization-Referenz

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.

Vereinfachte AWS-Service Informationen für den programmatischen Zugriff

AWS bietet Service-Referenzinformationen im JSON-Format, um die Automatisierung von Workflows zur Richtlinienverwaltung zu optimieren. Mit den Service-Referenzinformationen können Sie über AWS-Services maschinenlesbare Dateien auf verfügbare Aktionen, Ressourcen und Bedingungsschlüssel zugreifen. Zu den Service-Referenzinformationen gehören Metadaten, die über die Autorisierungsdetails hinausgehen, einschließlich Informationen über die IAM-Aktion, auf die zuletzt zugegriffen wurde, und Daten zur Generierung von IAM Access Analyzer-Richtlinien.

Sicherheitsadministratoren können Schutzmechanismen einrichten, und Entwickler können einen angemessenen Zugriff auf Anwendungen sicherstellen, indem sie die verfügbaren Aktionen, Ressourcen und Bedingungsschlüssel für jede Anwendung identifizieren. AWS-Service AWS stellt Service-Referenzinformationen AWS-Services bereit, mit denen Sie die Metadaten in Ihre Workflows zur Richtlinienverwaltung integrieren können.

Der Inhalt in der Service Authorization Reference kann anders dargestellt werden oder andere Metadaten enthalten. Weitere Informationen finden Sie unter Zusätzliche Felddefinitionen.

Anmerkung

Es kann bis zu 24 Stunden dauern, bis Änderungen an den Service-Referenzinformationen in der Liste der Metadaten für den Service übernommen werden.

Zugriff auf AWS-Service Referenzinformationen
  1. Navigieren Sie zu den Service-Referenzinformationen, um auf die Liste zuzugreifen, AWS-Services für die Referenzinformationen verfügbar sind.

    Das folgende Beispiel zeigt eine unvollständige Liste der Dienste und URLs ihrer jeweiligen Referenzinformationen:

    [ { "service": "s3", "url": "https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json" }, { "service": "dynamodb", "url": "https://servicereference.us-east-1.amazonaws.com/v1/dynamodb/dynamodb.json" }, … ]
  2. Wählen Sie einen Service aus und navigieren Sie zur Service-Informationsseite im url Feld für den Service, um eine Liste mit Aktionen, Ressourcen und Bedingungsschlüsseln für den Service anzuzeigen.

    Das folgende Beispiel zeigt eine unvollständige Liste der Service-Referenzinformationen für Amazon S3:

    { "Name": "s3", "Actions": [ { "Name": "GetObject", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ExistingObjectTag/key", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:if-match", "s3:if-none-match", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : false, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "object" } ], "SupportedBy" : { "IAM Access Analyzer Policy Generation" : false, "IAM Action Last Accessed" : false } }, { "Name": "ListBucket", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:delimiter", "s3:max-keys", "s3:prefix", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : true, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "bucket" } ], "SupportedBy" : { "IAM Access Analyzer Policy Generation" : false, "IAM Action Last Accessed" : false } }, ... ], "ConditionKeys": [ { "Name": "s3:TlsVersion", "Types": [ "Numeric" ] }, { "Name": "s3:authType", "Types": [ "String" ] }, ... ], "Resources": [ { "Name": "accesspoint", "ARNFormats": [ "arn:${Partition}:s3:${Region}:${Account}:accesspoint/${AccessPointName}" ] }, { "Name": "bucket", "ARNFormats": [ "arn:${Partition}:s3:::${BucketName}" ] } ... ], "Version": "v1.3" }
  3. Laden Sie die JSON-Datei von der Service-URL herunter, um sie in Ihren Workflows zur Erstellung von Richtlinien zu verwenden.

Zusätzliche Felddefinitionen

Aktionseigenschaften stellen zusätzliche Metadaten zu Dienstaktionen bereit, um sie anhand ihres Berechtigungsbereichs zu kategorisieren. Diese Eigenschaften befinden sich unter dem Annotations Feld für jede Aktion. Die Metadaten bestehen aus vier booleschen Werten:

  • IsList— Ermöglicht das Auffinden und Auflisten von Ressourcen, einschließlich grundlegender Metadaten, ohne auf den Ressourceninhalt zugreifen zu müssen.

    Beispiel — Diese Eigenschaft bezieht sich true auf die Amazon S3 ListBucket S3-Aktion, mit der Benutzer Bucket-Listen anzeigen können, ohne selbst auf die Objekte zugreifen zu müssen.

  • IsPermissionManagement— Stellt Berechtigungen zum Ändern von IAM-Berechtigungen oder Zugangsdaten bereit.

    Beispiel — Diese Eigenschaft gilt true für die meisten IAM- und AWS Organizations Aktionen sowie für Amazon S3 S3-Aktionen wie PutBucketPolicy undDeleteBucketPolicy.

  • IsTaggingOnly— Stellt nur Berechtigungen zum Ändern von Tags bereit.

    Beispiel — Diese Eigenschaft ist true für IAM-Aktionen TagRole vorgesehenUntagRole, obwohl diese Eigenschaft false für gilt, CreateRole da sie umfassendere Berechtigungen bietet, die über das Taggen hinausgehen.

  • IsWrite— Stellt Berechtigungen zum Ändern von Ressourcen bereit, was auch Tag-Änderungen beinhalten kann.

    Beispiel — Diese Eigenschaft gilt true für Amazon S3 S3-Aktionen CreateBucketDeleteBucket, und PutObject da sie die Änderung von Ressourcen ermöglichen.

Anmerkung

Diese Eigenschaften schließen sich nicht gegenseitig aus. Für eine Aktion können mehrere Eigenschaften auf gesetzt seintrue.

Es ist auch möglich, dass alle Eigenschaften vorhanden sindfalse, wie die GetObject Aktion von Amazon S3 zeigt. Dies bedeutet, dass die Aktion nur Leseberechtigungen für ein Objekt gewährt.

Diese Eigenschaften können verwendet werden, um Erkenntnisse für Dienste zu generieren. Das folgende Beispiel zeigt, welche Berechtigungen mit dem s3 Präfix mutierende Ressourcen zulassen:

> curl https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json | \ jq '.Actions[] | select(.Annotations.Properties.IsWrite == true) | .Name' "AssociateAccessGrantsIdentityCenter" "BypassGovernanceRetention" "CreateAccessGrant" "CreateAccessGrantsInstance" "CreateAccessGrantsLocation" ...

Das folgende Beispiel zeigt, mit welchen Aktionsbedingungsschlüsseln mit dem lambda Präfix Sie den Zugriff auf Aktionen zur Rechteverwaltung einschränken können:

> curl https://servicereference.us-east-1.amazonaws.com/v1/lambda/lambda.json | \ jq '.Actions[] | select(.Annotations.Properties.IsPermissionManagement == true) | {Name: .Name, ActionConditionKeys: (.ActionConditionKeys // [])}' { "Name": "AddLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "AddPermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] } { "Name": "DisableReplication", "ActionConditionKeys": [] } { "Name": "EnableReplication", "ActionConditionKeys": [] } { "Name": "RemoveLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "RemovePermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] }