Was ist der Zweck von AssumeRolePolicyDocument in IAM?


16

Ich bin verwirrt, was der Zweck von AssumeRolePolicyDocument ist.
Es scheint, als würden Sie eine Rolle erstellen. Sie benötigen lediglich einen übergeordneten Namen, an den Sie Richtlinien anhängen können. Es scheint, dass AssumeRolePolicyDocument dieser übergeordnete Name ist, aber irgendwie steckt mehr dahinter. Was macht das?

       "AssumeRolePolicyDocument": {
                "Version": "2012-10-17",
                "Statement": [
                    {
                        "Effect": "Allow",
                        "Principal": {
                            "Service": [
                                "lambda.amazonaws.com"
                            ]
                        },
                        "Action": [
                            "sts:AssumeRole"
                        ]
                    }
                ]
            },

Antworten:


6

Es ist ziemlich selbsterklärend. Der Zweck von AssumeRolePolicyDocumentbesteht darin, die Vertrauensbeziehungsrichtlinie zu enthalten, die einer Entität die Berechtigung zum Übernehmen der Rolle erteilt.

In Ihrem Beispiel wird dem Lambda-Dienst die Möglichkeit eingeräumt, davon auszugehen

Verweise

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html

https://docs.aws.amazon.com/cli/latest/reference/iam/create-role.html


1
Ich glaube, ich bin verwirrt darüber, warum es eine Rolle übernehmen muss. Warum kann eine Richtlinie nicht einfach zugewiesen werden?
mutant_city

@mutant_city, Sie müssen Lambda die Erlaubnis geben, eine Rolle zu übernehmen. Ohne dies wäre Lambda nicht in der Lage, etwas in Ihrer Umgebung zu tun. Der Rolle sind Richtlinien zugewiesen, die Lambda die Berechtigungen geben, die es für seine Arbeit benötigt.
Kenlukas

OK. Sie erlauben dem Lambda also, die Rolle zu übernehmen, der Sie Ihre Richtlinien zugeordnet haben ... im Grunde?
mutierte_Stadt

Ja, kurz gesagt, das ist es.
Kenlukas

5

Der Zweck des Richtliniendokuments zur Übernahme von Rollen besteht darin, einer IAM-Entität die Berechtigung zur Übernahme einer Rolle zu erteilen . Es wird auch als "Rollenvertrauensrichtlinie" bezeichnet.

Mit anderen Worten, für von Ihnen festgelegte Berechtigungen können Benutzer eines bestimmten AWS-Kontos diese Rolle übernehmen und auf dieses Konto zugreifen .

Es wird empfohlen, die Rollenvertrauensrichtlinie zu aktualisieren, um den Zugriff nur auf autorisierte Benutzer zu beschränken. Andernfalls kann jedes AWS-Konto die Rolle übernehmen und auf dieses Konto zugreifen.

Durch die Angabe Haupt mit Amazon Resource Namen (ARN) von der AWS - Konto, IAM Benutzer, IAM Rolle, Verbundbenutzer oder assumed-Rolle Benutzer, Sie Zugriff erlauben oder verweigern , diese Rolle zu übernehmen ( sts:AssumeRole).


0

Für alle, die sich bei der Namenskonvention am Kopf kratzen:

AssumeRolePolicyDocument (in CloudFormation yaml) = Vertrauensstellungen (in der AWS Console-Web-GUI)

Richtlinien (in CloudFormation yaml) = Berechtigungen (in der AWS Console-Web-GUI)


0

Ich denke, es ist viel klarer, wenn man bedenkt, dass der Benutzer, der eine Rolle erstellt, nicht unbedingt derjenige ist, der sie zur Verwendung irgendwo anfügt:

  • AssumeRolePolicyDocumentist eine Einschränkung des Benutzers, der die Rolle erstellt - z. B. möglicherweise ein Administrator. Es verhindert, dass andere Benutzer es an einen beliebigen AWS-Service / Benutzer anschließen. Außerdem sagt es nichts darüber aus, wo es tatsächlich verwendet wird. Es ist ein Schutz auf der Rollenseite (Behandlung der Rolle als eine Ressource, die ebenfalls geschützt werden sollte).

  • OTOH, das einem Dienst / Benutzer tatsächlich eine Rolle zuweist, wird von Benutzern ausgeführt, die jetzt tatsächlich einen Dienst benötigen, um über Berechtigungen zu verfügen. Und sie dürfen es nur tun, wenn die Rolle es AssumeRolePolicyDocumenterlaubt.

Zugegeben, wenn Sie der einzige Benutzer sind, ist Ihnen das vielleicht egal. Es fügt jedoch mehr Sicherheit und Dokumente hinzu (gewaltsam :)), wie die Rolle verwendet werden soll.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.