none
Negar acesso a um schema RRS feed

  • Pergunta

  • Olá pessoal, boa tarde.

    Tenho no meu banco de dados apenas o schema (dbo) onde todos os usuarios podem acessar os objetos lá contidos.

    Surgiu agora a necessidade de criar um novo schema (Ativd) na qual o mesmo será acessado apenas pelo usuario X e os atuais usuarios nao podem acessar estes objetos.

    Alguem pode me dar uma dica de como posso fazer?

    Obrigado.

    Ademir

    quinta-feira, 29 de novembro de 2012 16:24

Respostas

  • Ademir,

    Mas neste caso você tem que colocar este usuários dentro do Schema e atribuir a Permissão que deseja ao Schema que será um containner responsável em receber todas as permissões necessários e os usuários dentro deste schema vão herdar este conjunto.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    sexta-feira, 30 de novembro de 2012 16:29
    Moderador

Todas as Respostas

  • Ademir,

    Veja se o link abaixo pode ajudá-lo:

    http://msdn.microsoft.com/en-us/library/ms187940.aspx


    Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    quinta-feira, 29 de novembro de 2012 17:26
  • Olá Marcos, boa tarde!

    Vou testar e respondo aqui.

    Obrigado!

    Ademir

    quinta-feira, 29 de novembro de 2012 17:30
  • Marcos,

    fiz o teste e funciona! Mas desta forma tenho que fazer usuario por usuario (hoje tenho uns 30) e "lembrar" que a cada usuario novo eu tenho que executar este comando. O que pensei foi:

    Criar uma Role onde eu possa atribui-la a todos os usuarios atuais e para os que forem criados posteiormente, algo assim:

    CREATE ROLE RL_NegaAcessoSchemaAtivd AUTHORIZATION Ativd;
    DENY SELECT ON SCHEMA::Ativd

    Mas isto nao funcionou...rs

    Obrigado.

    Ademir

    quinta-feira, 29 de novembro de 2012 17:38
  • Nesse link aqui fala do GRANT para Roles

    GRANT

    DENY


    Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.


    • Editado Marcos Rocha quinta-feira, 29 de novembro de 2012 17:52
    quinta-feira, 29 de novembro de 2012 17:48
  • Ademir,

    Mas neste caso você tem que colocar este usuários dentro do Schema e atribuir a Permissão que deseja ao Schema que será um containner responsável em receber todas as permissões necessários e os usuários dentro deste schema vão herdar este conjunto.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    sexta-feira, 30 de novembro de 2012 16:29
    Moderador
  • Olá pessoal, bom dia.

    Desculpem o espaço longo de tempo para responder, tive um problema e fiquei afastado por este tempo.

    Fiz o seguinte, criei uma role chamada NegaAcessoSchema e nela atribui DENY para os objectos deste schema e nos usuarios que nao podem enxergar a tabela atribui a role.

    Funcionou, o problema é quando criam uma nova tabela neste schema.

    Depois vou analisar melhor como fazer de uma forma mais tranquila.

    Obrigado pessoal!

    Ademir!

    terça-feira, 11 de dezembro de 2012 13:32