2010-03-03 34 views
2

作爲創建工具以查詢與我們工作區域中的用戶相關的各種權限的工具的一部分,我需要查詢一些關於我們的數據庫服務器這些服務器運行SQL Server 2005(包括Analysis Services 2005的實例)。 我需要能夠找到一個給定服務器:使用Perl(或PHP)在MS SQL Server 2005和Analysis Services上列出權限/角色

  • 登錄該服務器
  • 角色該服務器
  • 什麼每個角色都有權利對名單上的列表
  • 是誰在每個角色(或每個登錄,它屬於哪個角色 - 任何一種方式)

該應用程序目前用Perl編寫,所以如果你知道使用Perl查詢這些信息的技術, WO我非常感謝。 我可以使用的唯一其他應用程序語言是PHP,但是如果可能的話,爲了一致性原因應該避免使用它。

回答

0

我對SSAS知之甚少,所以我會將這部分問題留給有相應經驗的人。

對於1,2和4,您應該可以使用system stored procs sp_helplogins,sp_helprole和sp_helprolemember。您還可以從視圖sys.database_role_members獲取角色成員資格。至於用戶/角色可以訪問的內容,視圖sys.database_permissions包含該數據。不需要perl特定的方法,只需使用普通的select和exec語句即可。

閱讀系統視圖,系統表和系統存儲過程的Books Online條目可能需要花費幾分鐘時間,這些條目將以各種形式返回所需的數據。

相關問題