我们有一个应用程序,它在本地使用Sql Server实例作为其后端存储。管理员Windows登录已将其sysadmin权限撤销,而是已创建两个sql登录;一个用于具有密码和一个只读登录的应用程序,我们允许用户使用。
查看原始数据这一点工作正常,直到我们开始使用FileStreams,这需要集成的Windows身份验证。所以现在必须替换sql server登录。
因此,我现在正在审查所有登录信息,但我不确定它是如何可行的。似乎应用程序需要完全读/写访问,但我仍然需要锁定写入表,以便用户无法登录数据库并随机删除数据。有没有人有任何关于使用集成Windows登录设置多个安全级别的提示,或者您可以指导我进一步阅读吗?
也可以在serverfault上找到一些答案:https://serverfault.com/questions/138763/setting-sql-server-security-rights-for-multiple-situations
答案 0 :(得分:1)
您可以向用户将使用的Windows登录名授予数据读取权限(即实际用户,组或内置组,如“用户”或“所有人”)。您的应用程序可以使用带有“秘密”密码的批准,并授予此批准的必要写入权限。您的应用程序以Windows用户身份登录,但随后会模拟批准。请参阅Application Roles。
一些注意事项: