2

我们有一个应用程序,它在本地为其后端存储使用Sql Server实例。管理员的Windows登录已撤销其sysadmin权限,而创建了两个sql登录名;一个用于秘密密码的应用程序和一个只读登录,我们让用户查看原始数据。为多种情况设置Sql服务器安全权限

这是工作正常,直到我们移动FileStreams,这需要集成的Windows身份验证。所以现在必须更换sql服务器登录名。

因此,我现在正在检查我们所有的登录信息,但我不确定它是如何实现的。看来应用程序需要完整的读/写访问权限,但我仍然需要锁定对表的写入操作,以便用户无法登录数据库并随机删除数据。有没有人有任何建议使用集成的Windows登录设置多级安全,或者你可以指导我进一步阅读?

一些答案,也可以在serverfault发现:https://serverfault.com/questions/138763/setting-sql-server-security-rights-for-multiple-situations

+0

为了查看我是否清楚,在FILESTREAM之前的方法下,您的用户使用相同的SQL登录名连接到应用程序以查看您的数据,并且现在数据已迁移到一个或多个FILESTREAM组? – 2010-05-05 14:10:41

+0

不,有一个公共只读登录和一个由应用程序内部使用的私人读/写登录。为了使用FILESTREAM登录,需要使用Windows身份验证,所以我需要删除SQL登录名,但仍保持安全的系统。 – DanDan 2010-05-05 14:42:02

回答

1

您可以授予数据读取权限的Windows登录的用户将使用(即实际用户,一组或内置组类似用户。或每个人)。您的申请可以使用带有“秘密”密码的批准文件,并授予该批准文件的必要写入权限。您的应用程序以Windows用户身份登录,但随后它会模拟该批准。见Application Roles

一些注意事项:

+0

感谢您提供这些优秀的信息。 – DanDan 2010-05-06 16:27:45