是否可以阻止SQL Server Admin更改数据库中的用户? 情况是由应用程序创建的用户对数据库具有ReadOnly权限。不应允许客户的服务器管理员更改该用户和数据库的这些权限或其他设置。
答案 0 :(得分:2)
不,你不能这样做。管理员是理所当然的管理员......
答案 1 :(得分:1)
嗯 - 错误 - 没有。
管理员拥有对数据库的完全访问权限。您无法阻止人们完全访问他们自己安装和拥有的数据库。
因此,他们可以随意使用数据库结构,并且可以自由删除应用程序中的关键文件。
所以我想说你能做的最好的事情就是向你的客户指出数据库模式是你开发和测试的模式,如果他们做了任何修改你就不能保证应用程序的正确性。 / p>
如果你有一个超级热门的热门律师,你可以探究性地制作一个EULA,这样可以捣乱它,就像苹果试图在PC上安装OS-X一样非法;)
答案 2 :(得分:0)
您是否可以避免向客户端提供管理员帐户详细信息,并使用您提及的权限/限制创建登录?这可能是客户的“管理员”帐户。
答案 3 :(得分:0)
如果您在SQL Server 2008中,请考虑是否可以在alter login命令上创建DDL触发器。作为管理员,他们仍然可以禁用此功能,但它至少会让他们知道他们第一次尝试更改未提交以及原因。可能,他们不会放弃触发器,因为登录的任何更改都可能是因为他们不知道他们不是。这不是一个完美的解决方案,但它将是一个保护级别。