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.
Gewähren des Funktionszugriffs auf eine Organisation
Um allen Konten in einer AWS OrganizationsOrganisation Berechtigungen zu erteilen, empfehlen wir, eine vollständige JSON-Richtlinie mit dem aws:PrincipalOrgID Bedingungsschlüssel put-resource-policy zu erstellen.
Wichtig
Durch put-resource-policy die Verwendung werden alle vorhandenen ressourcenbasierten Richtlinien für die Ressource ersetzt. Wenn für die Ressource bereits Berechtigungen mit definiert wurdenadd-permission, werden diese put-resource-policy überschrieben. Dient get-resource-policy zum Abrufen der vorhandenen Richtlinie, bevor Sie Änderungen vornehmen.
Verwendung einer vollständigen JSON-Richtlinie (empfohlen)
Die folgende Beispielrichtlinie gewährt allen AWS-Konten Mitgliedern der Organisation o-a1b2c3d4e5f Aufrufzugriff:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "org-access", "Effect": "Allow", "Principal": "*", "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-2:123456789012:function:my-function", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-a1b2c3d4e5f" } } } ] }
Speichern Sie die Richtlinie in einer Datei mit dem Namen policy.json und wenden Sie sie an:
aws lambda put-resource-policy \ --resource-arn arn:aws:lambda:us-east-2:123456789012:function:my-function\ --policy file://policy.json
Mit einer vollständigen JSON-Richtlinie können Sie auch den Zugriff auf bestimmte Konten innerhalb einer Organisation verweigern:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "allow-org", "Effect": "Allow", "Principal": "*", "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-2:123456789012:function:my-function", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-a1b2c3d4e5f" } } }, { "Sid": "deny-specific-account", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam::999888777666:root" }, "Action": "lambda:InvokeFunction", "Resource": [ "arn:aws:lambda:us-east-2:123456789012:function:my-function", "arn:aws:lambda:us-east-2:123456789012:function:my-function:*" ] } ] }
Verwenden von Add-Permission
Für einfache Anwendungsfälle können Sie die principal-org-id Option verwendenadd-permission. Der folgende Befehl gewährt allen Benutzern in der Organisation o-a1b2c3d4e5f Aufrufzugriff:
aws lambda add-permission \ --function-name my-function \ --statement-id org-access \ --action lambda:InvokeFunction \ --principal * \ --principal-org-id o-a1b2c3d4e5f
Anmerkung
In diesem Befehl ist Principal *. Dies bedeutet, dass alle Benutzer in der Organisation o-a1b2c3d4e5f Berechtigungen für den Funktionsaufruf erhalten. Wenn Sie eine AWS-Konto Oder-Rolle als angebenPrincipal, erhält nur dieser Prinzipal die Berechtigungen zum Aufrufen von Funktionen, aber nur, wenn er auch Teil der o-a1b2c3d4e5f Organisation ist.
Weitere Informationen finden Sie unter aws: PrincipalOrg ID im IAM-Benutzerhandbuch.