【发布时间】:2013-01-02 23:47:48
【问题描述】:
所以这就是场景 我有一个 C# 程序。 它会将序列号发送到我的网站。 (例如:www.example.com/LicenseCheck.php) 假设它以串行方式发送 1234-1234-1234。
licenseCheck.php 然后将连接到我的 mysql:
<?php
$username = "your_name";
$password = "your_password";
$hostname = "localhost";
//connection to the database
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";
?>
然后它将从有效的序列表中“选择”,如果表中存在许可证,则表示它是有效的序列。
基本上,我试图找到解决此问题的好方法。 我最担心在哪里存储“用户名”、“密码”。基本上我只有一个用户,只有读取权限。
我想尽可能地隐藏用户名和密码,并希望以一种安全的方式进行处理。
“安全”是什么意思?只是一种防止未经授权的用户进入我的数据库的方法。
感谢大家的帮助。
【问题讨论】:
-
mysql_*functions 已旧且已弃用。请改用MYSQLI或PDO。 -
“谁”隐藏了连接细节?如果它在 PHP 块中,则不会以纯文本形式发送,除非页面未根据请求进行解析(您没有正确配置 PHP)。您实际上是在问如何保护您的网络服务器吗?
-
感谢 Jared 提供的信息。那么你是说如果我使用 PHP(使用 MySqli)登录并且我的登录信息存储在该文件中,那么没有人能够看到它?如果是,那么好吧,我的答案已经解决了。如果不是,那么我想知道如何保护该信息。我在向“谁”隐瞒?那些因为我们不希望任何人看到所有有效序列而试图查看它的人,对吗?
-
如果它被 PHP 解析,PHP 将输出的内容作为请求的内容发送到缓冲区。问题是,会失败吗?你最好把不应该通过 URI/URL below 你的 web 根目录直接访问的东西放在 web 上,所以有人不能只是
http://www.yoursite.com/config.php并且通过故障或错误接收源 PHP .但是......这并不意味着,仅仅因为他们获得了您的数据库用户/通行证,他们就可以临时查询您的数据库。我们正在讨论多个步骤,可能是入侵和流氓代码,而不仅仅是在浏览器中使用 URL 进行攻击。 -
让我写一个简短的答案并指出我认为您需要的几点,看看您的用例(验证连续剧)。给我一分钟。
标签: c# php mysql apache licensing