我遇到了以下問題:有一個用戶必須執行存儲過程(spTest)。在spTest的主體中調用sp_trace_generateevent。 sp_trace_generateevent需要更改跟蹤權限,我不希望用戶擁有它。所以我希望用戶能夠執行spTest。我怎樣才能做到這一點?以另一個用戶權限執行存儲過程
17
A
回答
25
試試這個:
EXECUTE AS user = 'special_user'
EXECUTE YourProcerdure
REVERT
看到這些:
Understanding Context Switching<<<has examples of things like you are trying to do
Understanding Execution Context
EXECUTE AS Clause (Transact-SQL)
EXECUTE AS (Transact-SQL)
-1
當您執行該特定的存儲過程時,您將需要使用所需的用戶憑證創建不同的連接。
+0
出於某種原因,但這並沒有幫助。我得到錯誤,我沒有權限運行sp_trace_generateevent。但是當我作爲special_user連接到服務器時,我沒有任何問題來執行sp_trace_generateevent。有任何想法嗎? – StuffHappens 2010-05-12 14:19:51
3
正如其他人所建議的,你可以實現你的心願使用EXECUTE AS子句什麼。有關實施選擇的示例,請參閱Execute As子句的聯機叢書文檔。
爲了進一步閱讀和發展對此主題的更多理解,您期望實現的目標是Context Switching的安全概念。
1
這是我做什麼(成功):
let Source = Sql.Database("server", "database",
[Query= "EXECUTE AS USER='user' EXECUTE [schema].[spname] 'parm1', 'parm2'"])
在
Source
相關問題
- 1. 存儲過程權限和執行
- 2. SQL用戶權限 - 執行存儲過程
- 3. 在另一個存儲過程中未執行存儲過程
- 4. 執行另一個存儲過程的存儲過程
- 5. 授予SQL存儲過程權限執行權限
- 6. 執行Oracle存儲過程作爲另一個用戶
- 7. 腳本執行權限以及存儲過程
- 8. 如何查找某個用戶執行權限的所有存儲過程到
- 9. 通過執行命令調用另一個存儲過程
- 10. MySQL存儲過程權限
- 11. 在Oracle的另一個存儲過程中執行存儲過程
- 12. 授予數據庫中所有存儲過程的用戶執行權限?
- 13. t-sql創建用戶並授予執行存儲過程的權限
- 14. WFC網絡服務執行SQL Server存儲過程的權限
- 15. 存儲過程在sql server中的執行權限問題
- 16. 數據庫角色的存儲過程執行權限
- 17. 查找具有執行權限的存儲過程
- 18. 由於表上的權限,sql存儲過程執行失敗
- 19. 執行存儲過程的權限問題
- 20. MySQL用戶權限轉儲存儲過程
- 21. 如何拒絕執行權限的一堆存儲過程,但其中一些?
- 22. 如何爲另一個數據庫執行存儲過程?
- 23. 如何從另一個存儲過程調用存儲過程?
- 24. 從另一個存儲過程動態調用存儲過程
- 25. 從另一個存儲過程調用存儲過程oracle
- 26. 從另一個存儲過程調用Sybase存儲過程
- 27. 從另一個存儲過程調用SQL Server存儲過程
- 28. 從另一個存儲過程調用存儲過程
- 29. 從另一個存儲過程調用存儲過程
- 30. 調用存儲過程到另一個存儲過程
由於某種原因,它沒有幫助。我得到錯誤,我沒有權限運行sp_trace_generateevent。但是當我作爲special_user連接到服務器時,我沒有任何問題來執行sp_trace_generateevent。有任何想法嗎? – StuffHappens 2010-05-12 14:11:12
來自:http://msdn.microsoft.com/zh-cn/library/ms181362.aspx在EXECUTE AS中指定的用戶或登錄名必須分別作爲主體存在於sys.database_principals或sys.server_principals中,或者EXECUTE AS語句失敗。另外,IMPERSONATE權限必須授予委託人。除非調用者是數據庫所有者,或者是sysadmin固定服務器角色的成員,否則即使用戶通過Windows組成員身份訪問SQL Server的數據庫或實例時,主體也必須存在。 –
2010-05-12 14:21:09
這個建議也沒有幫助。看來我應該打開TRUSTWORTHY。不管怎樣,謝謝你。 – StuffHappens 2010-05-13 06:38:31