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"
]
}
]
},
quelle
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
).quelle
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)
quelle
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:
AssumeRolePolicyDocument
ist 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
AssumeRolePolicyDocument
erlaubt.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.
quelle