不用密码访问数据库? [关闭]
Posted
技术标签:
【中文标题】不用密码访问数据库? [关闭]【英文标题】:Access a database without a password? [closed] 【发布时间】:2014-06-27 15:30:08 【问题描述】:我是 SQL 数据库的新手,想知道用户是否可以在不提供密码的情况下访问数据库。还是我必须传入一个空的密码字段'PWD' => ''
删除密码文件的示例代码:
$connInfo = array(
'Database' => 'mystore',
'UID' => 'admin_user',
/*password field removed*/
'ReturnDatesAsStrings' => true
);
$connectString = sqlsrv_connect('some.sever.name', $connInfo) or die("Can't connect to the database");
$query = 'SELECT * FROM products';
$data = sqlsrv_query($connectString, $query) or die(print_r(sqlsrv_errors(SQLSRV_ERR_ALL), true));
while ($row = sqlsrv_fetch_array($data))
//Graduate
echo "<tr>";
echo " " .$row['NAME'] ." - " .$row['EMAIL'] ." ";
echo "</tr><br>";
sqlsrv_free_stmt($data);
sqlsrv_free_stmt($query);
?>
我这样做是出于测试目的,不会在没有密码的情况下将其上传到网站。请问以上代码的语法是否有效?
【问题讨论】:
“你能告诉我上面代码的语法是否有效吗?” - 你试过了吗?有任何错误吗?哦,我记得大约一天前有人问过同样的问题 ;-) 是的,代码对我来说就像指纹。 您已将此标记为mysql
,但您使用的是 Microsoft 驱动程序。你的意思是mssql
?
I am doing this for a testing purposes
那你为什么不测试呢?
@Fred-ii- 是的,我也记得这个问题,同样的 /*password filed removed*/
评论和 sqlsrv_* 函数。
“”的密码是密码,诚然不多。但是你的问题的答案是,为了拥有一个不能以任何理智的方式反映现实世界场景的数据库而糟糕地配置你的 dbms 是不值得的。
【参考方案1】:
连接 SQL 数据库的方式只有两种:
1) 在需要指定凭据的地方使用 SQL 密码
2) 或使用域身份验证,其中凭据与您在 PC 中登录的凭据相同: 选项1:数据源=localhost;初始目录 = 主;可信连接 = true 选项2:数据源=localhost;初始目录=master;集成安全=SSPI
但是您可以查看以下链接,您可以在其中找到大多数数据库和所有连接变体的任何连接字符串:
http://www.connectionstrings.com/
问候。 马贾海德
【讨论】:
【参考方案2】:我认为您可以按照您所说的最简单的方法是创建一个使用空字符串作为密码的用户。您可以直接在您的 RDMBS 管理员中执行此操作。
但是,从我个人的角度来看,这是一件非常愚蠢的事情:
拥有该用户名的任何人都可以访问您的数据。即使您为此类用户名提供只读权限,这也是不可取的。 你试图做这样的事情只是表示你很懒惰,你试图走捷径,而不是遵循(基本的)规则。除此之外,不要让其他人测试您的代码,而是自己做。如果您对特定问题有任何具体问题,请随时提出。
最后说明:您的问题表明您正在使用 SQL 服务器...但您正在标记为 MySQL...这是偶然的,还是故意的?
【讨论】:
昨天关于mysql标签的同样问题:-)以上是关于不用密码访问数据库? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章