none
Como dar permissão de UPDATE E INSERT para um usuário em um schema especifico RRS feed

  • Pergunta

  • Boa tarde, 

    Tenho vários schemas no banco, onde cada schema tem um usuário propietario, porém eu só consigo visualizar as tabelas ja criadas, tenho permissão também em dar SELECT, quando vou criar uma nova tabela por exemplo, lança um erro (CREATE TABLE permission denied in database), já fiz testes e o único modo que consegui para criar, é adicionando a role do db_owner, só que com isso aparece todos os outros schemas, e não quero isso, quero que cada usuario consiga só ver as tabelas do seu schema e possa criar novas tabelas e altera-las.

    Alguem pode me ajudar com esse problema? 

    Abraços

    terça-feira, 5 de setembro de 2017 20:24

Respostas

  • Olá Chistryano,

    o usuário que vc está usando para criar as tabelas precisa ter a permissão de create table.

    Segue exemplo do grant.

    USE SEU_BD;  
    GRANT CREATE TABLE TO SEU_USUARIO;  
    GO  


    Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)


    quarta-feira, 6 de setembro de 2017 16:25

Todas as Respostas

  • Boa tarde Christyano,

    Você pode criar os logins do pessoal e na tela de mapeamento de usuário, definir apenas a instancia que ele poderá ver, sendo assim ele não terá acesso a outras instancias, bem como definir o schema padrão nessa mesma tela.

    Lá você pode definir se ele será DataReader, DataWriter, etc
    terça-feira, 5 de setembro de 2017 20:32
  • Boa tarde, Carlos.

    Então os schemas é do mesmo banco, só que eu adiciono as roles de reader e writer, e mesmo assim não dá!

    Será que estou fazendo errado?

    terça-feira, 5 de setembro de 2017 20:39
  • No caso para conseguir fazer create table, você precisa dar permissão DDLadmin..

    Para ver o que cada uma dos Mapeamentos de usuário faz veja o documento abaixo:

    https://technet.microsoft.com/pt-br/library/ms189121(v=sql.105).aspx

    terça-feira, 5 de setembro de 2017 20:48
  • Olá Chistryano,

    o usuário que vc está usando para criar as tabelas precisa ter a permissão de create table.

    Segue exemplo do grant.

    USE SEU_BD;  
    GRANT CREATE TABLE TO SEU_USUARIO;  
    GO  


    Vinicius Fonseca - MCP | MCTS | MCDBA | MCITP | MCTS | MCT | ITIL Foundation - DGA SISTEMAS - Se minha resposta for útil, classifique-a. :)


    quarta-feira, 6 de setembro de 2017 16:25
  • Boa tarde,

    Por falta de retorno essa thread está sendo encerrada

    Se necessário, favor abrir uma nova thread.

    Atenciosamente,


    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 11 de setembro de 2017 16:36
    Moderador