SQL Server仅Windows身份validation策略问题

我想在我们的Web应用程序中使用SQL Server中的纯Windowsauthentication。 在过去,我们一直为Web应用程序创build了全function的1个SQLlogin。 在完成一些初始testing之后,我们决定创build模仿应用程序安全angular色的Windows Active Directory组(例如pipe理员,pipe理员,用户/操作员等等)。我们已经在SQL Server中为这些组创build了映射login并让他们访问应用程序的数据库。 另外,我们创build了SQL Server数据库angular色,并为每个组分配适当的angular色。 这工作很好。 我的问题围绕着大多数应用程序,公司中的每个人都应该可以读取报告(以及数据)。 据我所知,我有两个select:1)为每个应用程序创build一个只读/查看器AD组“angular色”,并把每个人都放在里面。 2)使用“域\域用户”组,并在SQL中为其分配正确的angular色。 什么是最好的和/或最简单的方法,允许每个人使用Windowsauthentication方法读取特定数据库对象的访问权限?

选项1是你最好的select。

授予访问公众不是一个好主意。 可能会出现这样的情况,用户可能会改变工作职能,并且此时您不希望公共angular色有权访问您的数据。 除非你公司的每个人都可以访问你的应用程序。

创build一个组然后将其分配给datareaderangular色不一定是个好主意,因为可能有数据不希望angular色中的每个人都读取(因此您的“特定数据库对象”规范)。

如果你创build一个组,然后给它SELECT / EXECUTE / etc访问有问题的对象应该为你做。

您始终可以授予对公共服务器angular色的各种安全对象的访问权限。 除非特别授予或拒绝权限,否则每个用户都会inheritance授予Public的权限。