Serviceübergreifende Vermeidung verwirrter Stellvertreter in Amazon EKS - Amazon EKS

Unterstützung für die Verbesserung dieser Seite beitragen

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.

Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.

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.

Serviceübergreifende Vermeidung verwirrter Stellvertreter in Amazon EKS

Das Problem des verwirrten Stellvertreters ist ein Sicherheitsproblem, bei dem eine Entität, die keine Berechtigung zur Durchführung einer Aktion hat, eine privilegiertere Entität zur Durchführung der Aktion zwingen kann. In AWS, dienstübergreifender Identitätswechsel kann zum Problem des verwirrten Stellvertreters führen. Ein serviceübergreifender Identitätswechsel kann auftreten, wenn ein Service (der Anruf-Service) einen anderen Service anruft (den aufgerufenen Service). Der Aufruf-Service kann so manipuliert werden, dass er seine Berechtigungen verwendet, um auf die Ressourcen eines anderen Kunden zu reagieren, auf die er sonst nicht zugreifen dürfte. Um dies zu verhindern, AWS bietet Tools, mit denen Sie Ihre Daten für alle Dienste mit Dienstprinzipalen schützen können, denen Zugriff auf Ressourcen in Ihrem Konto gewährt wurde.

Wir empfehlen die Verwendung der globalen Bedingungskontextschlüssel aws:SourceArn und aws:SourceAccount in Ressourcenrichtlinien, um die Berechtigungen einzuschränken, die Amazon Elastic Kubernetes Service (Amazon EKS) einem anderen Service für die Ressource gewährt.

aws:SourceArn

Verwenden Sie aws:SourceArn, um nur einer Ressource den serviceübergreifenden Zugriff zuzuordnen.

aws:SourceAccount

Verwenden Sie aws:SourceAccount, um jede Ressource in diesem Konto der serviceübergreifenden Nutzung zuzuordnen.

Der effektivste Weg, um sich vor dem Confused-Deputy-Problem zu schützen, ist die Verwendung des globalen Bedingungskontext-Schlüssels aws:SourceArn mit dem vollständigen ARN der Ressource. Wenn Sie die vollständige ARN der Ressource nicht kennen oder mehrere Ressourcen angeben, verwenden Sie den globalen Kontextbedingungsschlüssel aws:SourceArn mit Platzhalterzeichen (*) für die unbekannten Teile der ARN. Beispiel, arn:aws:<servicename>:*:<123456789012>:*.

Wenn der aws:SourceArn-Wert die Konto-ID nicht enthält, z. B. einen Amazon-S3-Bucket-ARN, müssen Sie sowohl aws:SourceAccount als auch aws:SourceArn verwenden, um Berechtigungen einzuschränken.

Serviceübergreifende Vermeidung verwirrter Stellvertreter in Amazon-EKS-Cluster-Rollen

Für jeden Cluster ist eine IAM-Rolle für Amazon-EKS-Cluster erforderlich. Von Amazon EKS verwaltete Kubernetes-Cluster verwenden diese Rolle zur Verwaltung von Knoten, und der veraltete Cloud-Anbieter nutzt diese Rolle, um Load Balancer mit Elastic Load Balancing für Services zu erstellen. Diese Cluster-Aktionen können sich nur auf dasselbe Konto auswirken. Daher empfehlen wir, jede Cluster-Rolle auf diesen Cluster und dieses Konto zu beschränken. Dies ist eine spezifische Anwendung der AWS Empfehlung, in Ihrem Konto den Grundsatz der geringsten Rechte zu befolgen.

Format der Quell-ARN

Der Wert von aws:SourceArn muss die ARN eines EKS-Clusters im Format arn:aws: eks:region:account:cluster/cluster-name sein. Beispiel, arn:aws: eks:us-west-2:123456789012:cluster/my-cluster.

Format für Vertrauensrichtlinie für EKS-Cluster-Rollen

Das folgende Beispiel zeigt, wie Sie die globalen Bedingungskontextschlüssel aws:SourceArn und aws:SourceAccount für Amazon EKS verwenden können, um das Problem mit verwirrtem Stellvertreter zu verhindern.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:us-west-2:123456789012:cluster/my-cluster" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }