我必须从位于另一台服务器上的视图访问记录。所以显而易见的方法是使用链接服务器,我使用
成功创建了它 EXEC sp_addlinkedserver @server = 'Server_Name'
现在我可以使用
从该服务器访问记录了 SELECT * FROM [Server_Name].[Database_Name].[dbo].[View_Name]
创建链接服务器后,我可以查看所有数据库&有表格和表格刚创建的链接服务器的“目录”菜单下的视图。我想在目录菜单下隐藏所有这些信息。
如何实现这一目标?提前致谢。
答案 0 :(得分:0)
你将不得不做这样的事情:
DENY VIEW DEFINITION。您无法删除用户查看视图和存储过程是否存在的能力,但您可以删除查看(大多数)内容的功能。
deny view definition to limits_role
go
sp_addrolemember 'limits_role ', 'limits_user'
go
sp_addrolemember 'db_datareader', 'limits_user'
go
然后在定义链接服务器时使用此用户。
sp_addlinkedsrvlogin [ @rmtsrvname = ] 'rmtsrvname'
[ , [ @useself = ] 'TRUE' | 'FALSE' | NULL ]
[ , [ @locallogin = ] 'locallogin' ]
[ , [ @rmtuser = ] 'rmtuser' ]
[ , [ @rmtpassword = ] 'rmtpassword'
上面的完整语法可以在MSDN
找到