none
CRIAR ACESSOS NAS BASES DE DADOS RRS feed

  • Pergunta

  • Pessoal,

    Tenho instalado uma instância SQLServer 2008 Std e agora terei dois bancos de dados de sistemas distintos onde o próprio fornecedor me apoia no suporte a esses bancos de dados. 

    Para eu não ter que liberar a senha do usuário SA para os dois fornecedores, tem como eu criar usuários específicos para cada banco de dados com perfil de administrador do banco ? Se sim, como devo fazer isso dado que não tenho conhecimento profundo em SQLServer ?

    A ideia final é ter o seguinte:

    banco de dados A -> usuário SA e usuário FORNEC1 como administradores

    banco de dados B -> usuário SA e usuário FORNEC2 como administradores

    Obrigado,

    quarta-feira, 20 de janeiro de 2016 13:30

Respostas

  • Ailton,

    Seguem abaixo os exemplos de scripts para realizar a criação dos logins, dos usuários de SQL Server e liberação de "administrador" em cada database:

    USE [master]
    GO
    CREATE LOGIN [usuarioTeste1] WITH PASSWORD=N'teste123', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
    GO
    USE [nomeDatabaseA]
    GO
    CREATE USER [usuarioTeste1] FOR LOGIN [usuarioTeste1]
    GO
    USE [nomeDatabaseA]
    GO
    ALTER ROLE [db_owner] ADD MEMBER [usuarioTeste1]
    GO
    USE [master]
    GO
    CREATE LOGIN [usuarioTeste2] WITH PASSWORD=N'teste123', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
    GO
    USE [nomeDatabaseB]
    GO
    CREATE USER [usuarioTeste2] FOR LOGIN [usuarioTeste2]
    GO
    USE [nomeDatabaseB]
    GO
    ALTER ROLE [db_owner] ADD MEMBER [usuarioTeste2]
    GO
    


    Felipe Lauffer MCSA: SQL Server | MCP


    • Editado FLauffer quarta-feira, 20 de janeiro de 2016 13:39
    • Sugerido como Resposta Tiago_Neves quarta-feira, 20 de janeiro de 2016 13:45
    quarta-feira, 20 de janeiro de 2016 13:36

Todas as Respostas

  • Você pode criar login já com permissão de SYSADMIN, porém ele terá acesso a tudo na sua instância.

    CREATE LOGIN FORNEC1 WITH PASSWORD = 'ABCDegf123';
    GO
    
    EXEC master..sp_addsrvrolemember @loginame = N'FORNEC1', @rolename = N'sysadmin'


    Você também pode liberar somente determinadas permissões, como criar Banco de Dados, etc.. 

    Recomendado remover ou desabilitar tais logins após o uso dos fornecedores para a implantação.

    Qualquer dúvida, permaneço à disposição.

    Att,

    Marcos Lanzarini
    Administrador de Banco de Dados
    Microsoft Certified Professional

    Se a resposta foi útil, por favor, vote-a como útil. Se isso resolveu seu caso, marque-a como resposta.

    quarta-feira, 20 de janeiro de 2016 13:36
  • Ailton,

    Seguem abaixo os exemplos de scripts para realizar a criação dos logins, dos usuários de SQL Server e liberação de "administrador" em cada database:

    USE [master]
    GO
    CREATE LOGIN [usuarioTeste1] WITH PASSWORD=N'teste123', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
    GO
    USE [nomeDatabaseA]
    GO
    CREATE USER [usuarioTeste1] FOR LOGIN [usuarioTeste1]
    GO
    USE [nomeDatabaseA]
    GO
    ALTER ROLE [db_owner] ADD MEMBER [usuarioTeste1]
    GO
    USE [master]
    GO
    CREATE LOGIN [usuarioTeste2] WITH PASSWORD=N'teste123', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
    GO
    USE [nomeDatabaseB]
    GO
    CREATE USER [usuarioTeste2] FOR LOGIN [usuarioTeste2]
    GO
    USE [nomeDatabaseB]
    GO
    ALTER ROLE [db_owner] ADD MEMBER [usuarioTeste2]
    GO
    


    Felipe Lauffer MCSA: SQL Server | MCP


    • Editado FLauffer quarta-feira, 20 de janeiro de 2016 13:39
    • Sugerido como Resposta Tiago_Neves quarta-feira, 20 de janeiro de 2016 13:45
    quarta-feira, 20 de janeiro de 2016 13:36