从 JavaScript 调用 PHP 文件安全吗?
Is it secure to call a PHP file from JavaScript?
我有一个简单的 HTML5 Canvas 游戏,在某个部分结束时我想将变量存储在 MySQL 中。使用 XMLHttpRequest、Ajax 或其他方式执行此操作是否安全?我是这样开始写的:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level='+level, true);
request.send();
我的问题是每个人都可以在控制台中这样做:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level=100', true);
request.send();
(如何)我能解决吗?
您可以结合使用身份验证、混淆和缩小来保护您的安全JavaScript 网络调用
示例 JS 混淆器库 JScrambler
示例 JS 缩小库 UglifyJS
身份验证-
我假设,您的 API 具有某种身份验证字段(例如 Hash/Token 等)。如果没有,您可以将它与 - This answer 集成。
- 确保使用基于会话提供给 JS 客户端的盐(甚至 API 密钥)。这样,您就可以防止未经授权的访问。
- 在服务器端,记住最后几个端点调用,在允许另一个端点调用之前,检查您的逻辑现在是否允许新的调用。
如果您按照上述步骤操作,肯定会非常安全。
我有一个简单的 HTML5 Canvas 游戏,在某个部分结束时我想将变量存储在 MySQL 中。使用 XMLHttpRequest、Ajax 或其他方式执行此操作是否安全?我是这样开始写的:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level='+level, true);
request.send();
我的问题是每个人都可以在控制台中这样做:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level=100', true);
request.send();
(如何)我能解决吗?
您可以结合使用身份验证、混淆和缩小来保护您的安全JavaScript 网络调用
示例 JS 混淆器库 JScrambler
示例 JS 缩小库 UglifyJS
身份验证-
我假设,您的 API 具有某种身份验证字段(例如 Hash/Token 等)。如果没有,您可以将它与 - This answer 集成。
- 确保使用基于会话提供给 JS 客户端的盐(甚至 API 密钥)。这样,您就可以防止未经授权的访问。
- 在服务器端,记住最后几个端点调用,在允许另一个端点调用之前,检查您的逻辑现在是否允许新的调用。
如果您按照上述步骤操作,肯定会非常安全。