【发布时间】:2015-05-19 16:56:26
【问题描述】:
我正在寻找保护我的应用程序登录 api 免受试图劫持它的第三方的最佳方法。我正在使用 Apigility、ZF2、Jquery。
我有一个游戏服务器(服务器 G)和一个云服务器(服务器 C)。
虽然服务器 C - 保存用户名和密码,但用户通过服务器 G 注册和登录。
服务器 C 和 G 都有自己的使用 ApiGility 的 API。
当用户登录到服务器 G 时,jquery 应用程序调用它自己的 API,然后使用 Oauth2 联系服务器 C 以验证输入的凭据。这样,我网络中的每个游戏都有一个到我的云的 Bearer 令牌连接,并且每个游戏都处理自己与其客户端(移动/浏览器/桌面等)的连接。保持清洁。
虽然服务器 G 到 C 是安全的,但如何保护对其自身 API 的 javascript 调用?
javascript 公开了本地应用程序 api 调用,这实际上意味着任何人都可以获取 url 并使用它:)
var url ='http://server-g.example.com/api/login/' + email + '/' + password;
$.ajax({
type: 'GET',
async: true,
url: url,
dataType: "json",
success: function(responseObject){
if (responseObject.status)
{
//Do stuff
} else {
//Do other stuff
}
}
});
我一直在考虑使用隐式授权,但是我不确定这将如何与我自己的 api 一起使用?
标准溶液是什么?
【问题讨论】:
标签: javascript jquery zend-framework2 oauth-2.0 laminas-api-tools