delete all_users 不,说真的!你真的想让任何人都可以访问你的数据库并随意编辑吗?如果你只是给予任何人访问权限,那么没有任何方法可以保护访问安全!你的用户名和密码会被暴露,使每个人都能够修改你的数据库。JavaScript 不安全,不能用于保存密码!
让我们来分析一下吧。所以你有一个需要数据的应用程序。这些数据需要从某个地方获取。你可以从SQL数据库中获取这些数据。现在,虽然SQL具有基于权限的访问等功能,但要正确保护“向公众开放”的东西,你必须将其锁定得非常严格。与其他技术相比,这在SQL中并不特别容易,并且可能会让你暴露于一些风险之中。SQL服务器是设计为处于封闭环境中的,只有服务器端代码才能与其通信。要从中获取数据,您需要一个用户名/密码。因此,这将必须存储在客户端上。现在你可以获取你的数据了。而且你只会得到你需要的数据。但是,有什么阻止任何真实用户试图获取更多的数据呢?除非你锁定了每个表、每个存储过程和所有其他的东西,否则什么也不能阻止他们。还有,有什么阻止用户窃取整个数据库的呢?根据我对SQL的了解,你无法限制用户获取一定数量的行。代理服务、Web服务或任何面向公众使用的前端服务提供了一种方法,让你可以过滤或设置访问限制。如果你的应用程序只需要某些数据,那么服务将只提供那些数据。调用是固定的-getUserProfile()。服务器已经知道当前用户,所以它只会获取该用户的详细信息。如果有一个getUserProfile(65),你怎么知道用户“65”是否真的是请求者呢?SQL不理解cookie或会话变量的复杂性,它只会说“嘿,这里有一个有效的用户名和密码,请给他们所有可以访问的东西!”它并没有设计为仅基于用户返回一行。因此,总结一下,你不能控制用户可以访问多少数据,所以你使用了一个理解用户应该看到什么的Web服务,并仅提供该信息。......而这只是从数据库中读取-写入是一种全新的痛苦和折磨。简而言之,这是一个坏主意。
你能否说出:JavaScript在哪里执行? 如果你说:用户的浏览器,那么你的答案是正确的。 因此,您已经向所有使用者发送了带有连接字符串的代码,遍布全球。 许多人不知道如何使用它,但许多人非常了解它。他们有锁和钥匙。 希望这对你有所帮助。