我将Apigee用作私有REST API的代理,该API允许对数据库进行基本的CRUD操作。前端开发人员希望直接从JavaScript / Ajax调用我的API,所以我不能使用基本的API密钥身份验证,因为任何人都可以查看JS的源并在我的API上调用可能具有破坏性的方法(我远非如此)浏览器中的策略,但这不会阻止某人进行卷曲并在浏览器外部调用我的API)。
最好的方法是什么?用户身份验证后,UI开发人员是否可以以某种方式使用OAUTH为每个会话获取访问令牌,并将其用于他的Ajax调用中?但是即使那样,该用户也无法查看JS源并通过curl进行令人讨厌的操作吗?
提前致谢!
最佳答案
OAuth v2应该可以解决您的问题。 Apigee网站上有多篇文章和资源,讨论何时最好使用OAuth v1与OAuth v2。
http://apigee.com/docs/content/apigee-oauth-frequently-asked-questions,三足的OAuth策略可能最适合您:http://apigee.com/docs/gateway-services/content/oauth。 Apigee网站上有一个示例。