2016-07-26 1 views
0

У меня есть настольное приложение, разработанное с использованием vb.net. Он запускается на SQL Server 2008. После создания нового пользователя и пользователя я понял, что при входе в систему они могут просматривать и хранить секретные документы, такие как хранимые процедуры. Я хочу, чтобы кто-нибудь не видел хранимые процедуры, триггеры и т. Д. Но я хочу, чтобы они могли выполнять их только. Я не знаю, как этого добиться. Пожалуйста помоги мне с этим.Как запретить пользователям просматривать хранимые процедуры и другие средства обеспечения безопасности в SQL Server 2008

+0

вы хотите, чтобы быть в состоянии выполнить их, но не видеть их? Я думаю, что если вы дадите пользователю разрешение на выполнение процедуры, то подразумевается, что пользователь должен уметь видеть, что он есть. И какой вред - если они не могут их модифицировать и не могут получить доступ к базовым таблицам, в чем проблема? Большинство пользователей даже не знают, как напрямую войти в SQL Server, или установить инструменты для этого. – ADyson

+0

Вы можете использовать опцию 'with encription'. Прочитайте [CREATE PROCEDURE (Transact-SQL)] (https://msdn.microsoft.com/en-us/library/ms187926.aspx) для спецификации. –

ответ

0

Вы можете лишить права пользователя/роли для просмотра определения DDL. Это не помешает им увидеть имена объектов.

Например,

DENY VIEW DEFINITION ON dbo.stored_procedure TO GWashington