SQL 鏈接服務器及權限限制


 

新增一個用戶且只賦予它表A及表B select的權限

方法一:T-SQL語法,

exec sp_addlogin 'username','password','DB1'
exec sp_adduser 'username'
grant select on TB1 to username
grant select on TB2 to username
方法二:圖形化界面操作
參考http://wenwen.soso.com/z/q230175388.htm
關鍵點:新建一個數據庫實例的登錄用戶,然后在具體的數據庫中“安全性”-->“用戶”設定表權限
分布式查詢--》鏈接服務器

遠程連接SQL2000時,需要用到系統存儲過程 sp_addlinkedserver和sp_addlinkedsrvlogin

例:我要通過查詢分析器連接172.20.40.208電腦上的Sea數據庫,並查詢"pknglst"表,代碼如下:

exec sp_addlinkedserver   'ITSV ', '', 'SQLOLEDB','172.20.40.208 ','','','sea'
exec sp_addlinkedsrvlogin  'ITSV ', 'false ',null, 'sa ', 'confidence'
select * from ITSV.sea.dbo.pknglst

"ITSV"為連接此數據庫的別名。

"SQLOLEDB"為與此數據源相對應的 OLE DB 提供程序的唯一程序標識符 (PROGID)。MSSQL為SQLOLEDB。

以后不再使用時刪除鏈接服務器代碼

exec sp_dropserver  'ITSV ', 'droplogins '

 

 

exec sp_addlinkedserver   'ITSV', '', 'SQLOLEDB','127.0.0.1 '

EXEC sp_addlinkedsrvlogin
     'ITSV', --被訪問的服務器別名
     'false',
     NULL,
     'sa', --帳號
     'zhouqing' --密碼

Exec sp_droplinkedsrvlogin 'ITSV',Null
Exec sp_dropserver 'ITSV'

 

SQL權限問題,利用Linked Server 建view user存取的相關權限

今天我們有一個外部廠商要存取我們資料庫的某些資料

由於公司不想讓廠商直接連到我的主要的SQL server(假設為A server)

因此要另外架一台SQL,server(假設為B server),

然後在B server利用linked server去A抓一些table建成view存在B server

在B server上開帳號給廠商,讓廠商帳號只能讀 B server上的某些view

但問題是,廠商的權限並無法存取linked server,所以要select view 時就會失敗

訊息 18456,層級 14,狀態 1,行 1

連結伺服器 "XXXXX" 的 OLE DB 提供者 "SQLNCLI" 傳回訊息 "無效的連線字串屬性"。

有解決的方法嗎?

究竟要怎樣提供廠商存取view的權限..但又不讓他直接連到A server

 

 

思路:

要先在A建一個只能select view_A 的 account

然後在B用A這個account來建立 linked server的連線

(同時在安全性裏 選擇廠商的account去對應A的account)

我就在本機伺服器與遠端伺服器登入對應的項目中 加入一筆

本機使用者   摸擬             遠端使使用者      遠端密碼

userB         沒勾選             userA            XXXXXXXX  

參考:http://social.technet.microsoft.com/Forums/zh-TW/sqlservermanagementzhcht/thread/ab6ab7f4-6c6e-41ca-b333-30c7b64c4ddd

 

 

 

權限說明:執行需要的sp_addlinkedserver權限    執行許可權限默認授予 sysadmin 和 setupadmin 固定服務器角色的成員

 

參考:SQL Server的鏈接服務器技術小結【摘自:91qz.com】 http://www.cnblogs.com/ding0910/articles/419807.html 

SQL Server分布式查詢詳細介紹 http://www.qqread.com/sqlserver/2010/09/f495658.html

sp_addlinkedserver的一些操作 http://hi.baidu.com/lvzhnan/blog/item/036a98c28084d553b219a87f.html

SQL SERVER2005建Link Server http://space.itpub.net/7728585/viewspace-682567


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com