如何在SQL Server中正确配置应用程序角色

时间:2011-12-08 00:18:05

标签: sql-server database sql-server-2008

我在SQL Server数据库上添加了一个Application Role,并授予该角色对数据库的一个表的访问权限。从客户端我可以使用应用程序角色的凭据正确登录。

我正在使用Windows身份验证。奇怪的是,即使客户端没有sp_setapprole语句,客户端也可以毫无问题地读取表格。但我想避免这种情况。

我正在使用此连接字符串:

Data Source=.\SQLEXPRESS;Initial Catalog=WTC_Database;Pooling=false;Integrated Security=SSPI;

可能是什么问题?如何正确配置应用程序角色,拒绝未登录应用程序角色的其他用户访问该表?

1 个答案:

答案 0 :(得分:2)

由于您的连接字符串指定使用集成安全性,因此我们知道客户端的凭据正用于身份验证。客户端可能具有datareader角色,或者表可能是公共选择。

您需要撤消对所有人的访问权限,除了谁应该有访问权限。角色应始终授予访问权限,而不是撤销访问权限。在不授予某些角色的情况下,您的系统应该很少或不允许访问数据。