2017-02-16 99 views
0

我已經在我們的訂單流程檢查幾個選擇和餘額存儲過程,長話短說GRANT選擇權限,這個存儲過程讀取(SELECT)在散佈約20桌3個數據庫。執行權限授予不上表

CREATE USER [stageUsrOrder] FOR LOGIN [domain\[my user]] 
GO 
CREATE ROLE OrderSpecRole AUTHORIZATION [stageUsrOrder] 
GO 
GRANT EXECUTE on [orders].[ValidateOrderById] TO pmdSchedulerRole 
GO 

我認爲這個聲明會給我讀訪問存儲過程中的所有表。

我有嘗試

GRANT EXECUTE on [AVIS].[spReportValidationByLAN] TO pmdSchedulerRole WITH GRANT OPTION 
GO 

但沒有奏效。

所以,我怎麼授予執行訪問存儲過程,並選擇裏面的所有表?

回答

0

你不知道。存儲過程的價值主張之一是可以限制對特定模式的訪問。例如,如果你希望人們只能通過ID進行搜索,你給那麼一個存儲過程,需要ID作爲參數。

但是,如果你想給他們對基礎表任意選擇訪問,你必須做明確。