問題如何從EC2託管的應用程序訪問Cognito身份而不需要訪問API網關?
在一個高的水平,我想在授權根據用戶的具體Cognito提供的身份我的應用程序的某些功能。
更具體地說,我想在我的EC2託管的Tomcat應用程序中執行此操作,而不依賴於API網關。
一個例子
例如,我的RESTful服務可能在helloworld.com/tastyTreats/foo
和/tastyTreats/bar
有資源。當tastyTreat
在數據庫中列出爲由特定Cognit標識符擁有時,我只想允許對這些資源進行寫入訪問。
說該數據庫是這樣的:
{"TreatName":"foo", "Owner":"Alice"},
{"TreatName":"bar", "Owner":"Bob"},
...
因此,通過Cognito認定爲鮑勃用戶應該有helloworld.com/tastyTreats/bar
寫訪問,但應該訪問/tastyTreats/foo
時hit a 403。
我希望能夠在我的EC2實例中執行此授權,因爲其(實質上)無限靈活性。而且,如果可行,我想避免需要滾動API網關 - 這是一個非常小的應用程序,我希望儘可能簡單。
其他AWS提供此功能的
直EC2旁邊的其他服務的服務提供了基於真實身份改變行爲的能力:
- API網關似乎允許訪問該身份in the mapping template 。
- 您可以更普遍地customize a policy based on this identity,但此功能似乎有限的身份轉換能力。
謝謝!