問題API Gatewayの前でEC2ホストアプリケーションからCognito IDにアクセスするにはどうすればよいですか?ハイレベルで
、私は、ユーザーの特定のCognitoが提供するアイデンティティに基づいて自分のアプリケーションで特定の機能を許可します。
具体的には、私はEC2ホストのTomcatアプリケーション内で、APIゲートウェイに頼らずにこれを行いたいと思います。
例
例えば、私のRESTfulなサービスがhelloworld.com/tastyTreats/foo
と/tastyTreats/bar
でリソースを持っているかもしれません。 tastyTreat
がデータベースに特定のCognito識別子が所有するものとしてリストされている場合にのみ、それらのリソースへの書き込みアクセスを許可したいとします。
は、データベースがこのようになっていることを言う:
{"TreatName":"foo", "Owner":"Alice"},
{"TreatName":"bar", "Owner":"Bob"},
...
ので、ボブとしてCognitoで識別されるユーザーはhelloworld.com/tastyTreats/bar
への書き込みアクセス権を持っている必要がありますがhit a 403/tastyTreats/foo
にアクセスする必要があるとき。
EC2インスタンス内で(本質的に)無制限の柔軟性のためにこの権限を実行したいと考えています。実現可能であれば、API Gatewayをロールする必要はありません。非常に小さなアプリケーションであり、できるだけシンプルにしたいと思います。
- API Gatewayは、このアイデンティティin the mapping templateへのアクセスを許可するようだ:この機能にストレートEC2の横
その他のサービスを提供
他のAWSサービスは、実際のアイデンティティに基づいて動作を変更する機能を提供します。
- より一般的にはcustomize a policy based on this identityですが、この機能はIDを変換する機能に制限があるようです。
ありがとう!