大家好,
我正在创建一个将在我的网络服务器上运行的系统。问题是,当用户从用户表中获得他们的帐户详细信息(用户名和密码)时,就可以在公司之外的任何地方打开它。我不知道如何相信这一点,但我有一些方法:
-
每台计算机都有各自的ip地址。我想要的是,只有在从公司网络内部访问而不是从外部访问时,该系统才能工作。你能帮我做这个吗?
-
除此之外,第一,如何在没有用户登录时锁定表,以及在有用户登录时解锁表。
我使用的是mysql数据库,php,phpmyadmin。。。你能帮忙吗
$ip=$_SERVER['REMOTE_ADDR'];
if($ip=="xxx.xxx.xxx.xxx") //xxx.xxx.xxx.xxx will be your gateway ip
{
//your application code
}
实际上,第一个应该用PHP完成,因为你对DB的请求将只通过web服务器发送(希望)
print_r($_SERVER);
$myip = $_SERVER['REMOTE_ADDR'];
但是,如果您有直接的mysql访问权限,则会限制登录并撤销所有其他内容将A_DATABASE_NAME.A_TABLE_NAME上的select授予'login'@'hostname'
对于2,你的意思是不允许任何人在没有登录权限的情况下访问数据吗?只要给予适当的授权。您的应用程序是唯一允许登录的应用程序
即。1.您的数据库应该只能由1个登录帐户访问,该帐户只能通过php服务器访问2.将db.privatetable上的select授予对外部网络可见的表3.不惜一切代价避免锁定