Auf hohem Niveau möchte ich eine bestimmte Funktionalität in meiner Anwendung auf dem Benutzer spezifischen Cognito bereitgestellten identitätsbasierten autorisieren.
Genauer gesagt, würde Ich mag diese Tomcat Anwendung in meinem gehosteten EC2-tun, ohne sich auf API-Gateway.
Ein Beispiel
Zum Beispiel könnte meine RESTful Service-Ressourcen haben bei helloworld.com/tastyTreats/foo
und /tastyTreats/bar
. Ich möchte nur Schreibzugriff auf diese Ressourcen ermöglichen, wenn die tastyTreat
in der Datenbank als Besitzer einer bestimmten Cognito-ID aufgeführt ist.
Sagen Sie, dass Datenbank wie folgt aussieht:
{"TreatName":"foo", "Owner":"Alice"},
{"TreatName":"bar", "Owner":"Bob"},
...
So kann der Benutzer von Cognito als Bob sollte sollte, wenn aber hit a 403/tastyTreats/foo
Zugriff Zugriff auf helloworld.com/tastyTreats/bar
haben Schreib identifiziert.
Ich möchte in der Lage sein, diese Genehmigung für seine (im Wesentlichen) unbegrenzte Flexibilität in meiner EC2-Instanz auszuführen. Und wenn es machbar ist, möchte ich die Anforderung vermeiden, API Gateway zu rollen - es ist eine sehr kleine Anwendung und ich möchte die Dinge so einfach wie möglich halten.
Andere Dienste AWS, die diese Funktionalität
Andere Dienste neben geraden EC2 bieten bieten die Möglichkeit, das Verhalten auf die tatsächliche Identität zu verändern, basierend:
- API-Gateway scheint in the mapping template Zugriff auf diese Identität zu ermöglichen, .
- Sie können allgemein customize a policy based on this identity, aber diese Funktion scheint begrenzt in seiner Fähigkeit, die Identität zu transformieren.
Vielen Dank!