Ich habe mehrere Benutzergruppen (die in Cognito über einen eigenen Identitätspool verfügen), die auf Endpunkten in API Gateway unterschiedliche Rechte haben. Ich verwalte die Zugriffsrechte mit den IAM-Rollen. Zum Beispiel habe ich diese Richtlinie für einen Identitätspool:Feinkörniges Zugriffsmanagement mit AWS Cognito und API Gateway
{
"Sid": "Stmt1467885818000",
"Effect": "Allow",
"Action": [
"apigateway:Invoke"
],
"Resource": [
"arn:aws:execute-api:eu-central-1:891841139854:api-id/*/*/usergroup/*"
]
}
Jetzt möchte ich Zugriffsregeln haben, basierend auf einer einzelnen Identitäten. Der Grund ist, dass ich Ressourcen habe, die nur von dem Benutzer geändert werden können, der die Ressourcen "onwetzt" (oder aufgelistet ist, wie man auf die Ressource zugreifen darf).
Kann ich irgendwie IAM dafür benutzen? Meine Idee ist so etwas wie dieses:
"Resource": [
"arn:aws:execute-api:eu-central-1:891841139854:api-id/*/*/<my-user-name>/*"
]
Also diese Weise kann jeder Benutzer nur die Endpunkte mit seinen Benutzernamen (und diesen Benutzernamen als Lambda weitergeleitet werden können, die sicher sein können, dass der angegebene Benutzer das Recht hat, führe die Aktion durch).
Ist das möglich? Wenn nicht, wie würde ich feinkörnigen Zugriff konfigurieren?
Welche Integration verwenden Sie mit API Gateway? HTTP-Proxy, Lambda-Funktionen oder AWS Service Proxy? –
Verschiedene. Aber meistens Lambda. – Nathan