我有一个 sql server 2012 实例设置为联网服务器上的文件存储。我需要同一网络上计算机上的所有用户都能够浏览代表文件表的文件系统。但是,所有用户都可以看到服务器和顶级目录,但无权访问/打开它。
我应该查看哪些权限才能启用访问权限。
我有一个 sql server 2012 实例设置为联网服务器上的文件存储。我需要同一网络上计算机上的所有用户都能够浏览代表文件表的文件系统。但是,所有用户都可以看到服务器和顶级目录,但无权访问/打开它。
我应该查看哪些权限才能启用访问权限。
Run the following code within SQL
ALTER DATABASE myDatabase
SET FILESTREAM ( NON_TRANSACTED_ACCESS = FULL )
GO
Providing that FILESTREAM is enabled for the instance, this has been done, and a valid directory has been specified, it should work.
use myDatabase
go
grant view definition to [user]
您可能会考虑提供一个域组 (1) 访问服务器和 (2) 包含文件表的数据库,然后授予 (3) 特定权限给每个文件表以允许他们访问其内容。
这可以通过使用单独的 GRANT 语句(SELECT、DELETE、UPDATE、INSERT - 如果您希望它们能够在服务器/实例/文件表文件夹级别浏览,则可选 ALTER)或创建数据库角色并为其授予这些权限来完成然后将域组链接到该角色。
将此添加到 SQL 帐户“NT AUTHORITY\Authenticated Users”并授予对数据库的访问权限