Funcionaria para você criar um usuário para o login e atribuir-lhe uma função somente leitura?
<!-- language: lang-sql -->
CREATE USER hello FOR LOGIN hello
GO
EXEC sp_addrolemember 'db_datareader', 'hello'
Eles não devem ser um membro da função db_owner depois disso, a menos que seja definido em algum lugar por padrão para adicionar novos usuários à função db_owner. Isso deve limitar a SELECT somente no banco de dados do usuário. Se você quiser limitar as visualizações a tabelas específicas, será necessário criar uma função personalizada para limitar esse acesso.