Segurança Integrada do SQL Server

Eu tenho procurado muito para me familiarizar com questões relacionadas à segurança em um SQL Server. Estamos desenvolvendo um aplicativo .NET que se destina ao SQL Server 2008 e queremos usar o FileStream.

Agora eu descobri que o SQL Server só permite FileStream através da API do Win32 se você usar o Integrated Security. O problema é que temos cerca de 80% do nosso aplicativo finalizado, mas é totalmente baseado na Autenticação SQL. Portanto, estamos fazendo o formulário direto do INSERT em nosso aplicativo e não estamos usando Procedimentos Armazenados para cada operação CRUD.

Isso é relativamente seguro porque posso armazenar o nome de usuário e a senha do SQL em um formato criptografado. Eu sei que a senha é transportada em texto não criptografado, mas estou disposto a aceitar isso.

Queremos que os usuários finais possam se conectar ao banco de dados por meio de ferramentas como o Crystal Reports e, para isso, temos um login extra do SQL que tem apenas direitos SELECT concedidos.

Agora, se mudarmos para Segurança Integrada, teríamos que conceder aos usuários individuais (através de grupos AD, etc.) direitos para fazer as coisas que o aplicativo pode fazer. Caso contrário, o aplicativo não poderá fazer seu trabalho. Mas o usuário final também teria esses direitos quando se conectasse diretamente ao DB.

Eu vejo pessoas dizendo que você deve usar Procedimentos Armazenados para cada operação CRUD e conceder os direitos EXEC apenas para o grupo AD, mas como eu faria isso? Eu não vejo como um usuário teria diferentes autorizações quando ele se conecta diretamente ou através do aplicativo ... Alguém pode me esclarecer sobre isso.

Uma pergunta extra para pontos de bônus: Segurança Integrada não funcionará em um grupo de trabalho, tanto quanto eu entendo. Como as pessoas usam o FileStream para trabalhar em um grupo de trabalho? Ou isso é considerado uma impossibilidade?

questionAnswers(1)

yourAnswerToTheQuestion