locked
Problemas com direitos na base de dados e consulta no excel RRS feed

  • Pergunta

  • Pessoal boas tardes.

    O caso é o seguinte, criei um usuário local no SQL 2008 (FINANCEIRO), este usuário faz parte de um grupo (RL_FINANCEIRO) e este grupo tem grant select e deny select em uma série de tabelas (2800) do Microsiga.

    Graças a ajuda aqui do fórum consegui fazer o comando para fazer isso de forma mais simples.

    Esse usuário deverá fazer conexão via EXCEL com a Base de dados (DADOSADV) e para isso vi que tenho que fixar a role sysadmin.

    Mas me deparei com um grande problema, esse usuário nao deve acessar de forma nenhuma várias tabelas, mas mesmo assim estou conseguindo acessá-las sem problemas mesmo com o grupo com Deny select na mesma.

    Pergunta:

    Tenho como bloquear acesso às tabelas mesmo com o usuário como sysadmin, pois se to tiro desta role as tabelas ficam bloqueadas como eu desejo mas ele não consegue fazer a conexão no EXCEL...será que estou ferrado?

    Por favor me ajudem

    Obrigado!!!

     

    quarta-feira, 14 de julho de 2010 19:58

Respostas

  • Então, o que quero é evitar ao maximo dar qualquer direito de sysadm para os usuários.

    Fiz os testes no SQL e Crystal reports sem problemas.

    Mas no EXCEL dá o erro supimpa de DBCC TRACEON, li que a partir do SQL 2005 os usuários public não conseguem mais fazer o acesso sem ser sysadm.

    Mas vi em um site

    http://msmvps.com/blogs/martinpoon/archive/2007/07/06/microsoft-query-odbc.aspx

    Que mudando a aplicação para conexão ao ODBC burla esse erro.  Fiz testes e realmente funcionou.

    Apenas queria ver se há outra solução além dessa.

    Obrigado pela resposta!

    quinta-feira, 15 de julho de 2010 15:28

Todas as Respostas

  • PessoALL encontrei uma semi-solução depois de bastante pesquisa.

    No momento da autenticação do ODBC é necessário alterar nas Opções o nome do aplicativo para qualquer coisa menos 'Microsoft(R) Query'.

    Estou utilizando msquery ou AE e funcionou "milagrosamente".

    Descobrindo que o SQL 2005 e o 2008 não deixam que usuários public conecte tive que buscar essa solução...

    Alguem conhece outra?

    Abrs!

    quinta-feira, 15 de julho de 2010 15:01
  • Bom Dia,

    Não é necessário que alguém seja SysAdmin para conectar-se ao SQL Server. Isso é inclusive completamente não recomendado, pois, a partir do Excel o usuário poderia não só ler qualquer coisa como também alterar ou fazer qualquer coisa no servidor (com MACROs e VSTO é claro). O DENY não tem qualquer efeito sobre um usuário SYSADMIN visto que para usuários desse nível nenhuma permissão é checada (até porque ele poderia removê-las se quisesse).

    O SQL Server apenas "recebe" e uma dadas as permissões não há mais nada a fazer. Creio que algo esteja "incompleto" por conta do Excel. Seria interessante fazer o seguinte teste:

    - Crie o usuário com as permissões corretas (sem sysadmin)
    - Tente conectar-se na base com esse usuário através de outras aplicações (Query Analyser, Management Studio, Access, etc)
    - Se houver alguma falha na conexão ou no acesso ajuste
    - Se funcionar, o SQL Server está "homologado"
    - Tente fazer a conexão com o Excel. Senão funcionar tente ver o que é necessário no Excel, pois, não é SQL Server

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Dois anos de blog, vários artigos, muitas visitas e valiosos feedbacks
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!1105.entry


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 15 de julho de 2010 15:07
  • Então, o que quero é evitar ao maximo dar qualquer direito de sysadm para os usuários.

    Fiz os testes no SQL e Crystal reports sem problemas.

    Mas no EXCEL dá o erro supimpa de DBCC TRACEON, li que a partir do SQL 2005 os usuários public não conseguem mais fazer o acesso sem ser sysadm.

    Mas vi em um site

    http://msmvps.com/blogs/martinpoon/archive/2007/07/06/microsoft-query-odbc.aspx

    Que mudando a aplicação para conexão ao ODBC burla esse erro.  Fiz testes e realmente funcionou.

    Apenas queria ver se há outra solução além dessa.

    Obrigado pela resposta!

    quinta-feira, 15 de julho de 2010 15:28
  • Olá Spiritiun,

    Eu desconhecia esse comportamento, mas se olharmos o artigo ele refere-se ao Excel 2000.
    Acredito que se outras versões do Excel forem utilizadas isso não aconteça (talvez algum Service Pack do Office consiga corrigir essa falha).

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Dois anos de blog, vários artigos, muitas visitas e valiosos feedbacks
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!1105.entry


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 15 de julho de 2010 15:52