Que direitos eu precisaria conceder a um usuário para que ele pudesse visualizar todo o código DDL (como código de procedimento armazenado), mas não pudesse editar nada dele?
A única possibilidade parece ser DDLadmin, mas isso permitiria que um usuário editasse também. Existem outras opções ou talvez uma maneira de conceder e revogar parte do DDLAdmin?
Você pode fornecer
VIEW DEFINITION
no nível de objeto, esquema ou banco de dados.http://msdn.microsoft.com/en-us/library/ms173848.aspx