Recentemente, em uma de minhas interações com um DBA dentro de uma grande organização financeira, fiquei surpreso ao ver que o administrador estava fazendo login em um desktop/servidor usando uma credencial diferente. O que me deixou perplexo foi o fato de que ele estava fazendo logoff. Eu imediatamente perguntei, por que você está fazendo isso? Ele disse que, como estava usando a autenticação do Windows, que era diferente de suas credenciais normais, para atividades relacionadas ao banco de dados, ele costumava criar uma sessão diferente. Depois de um pouco de pesquisa, descobri que isso é uma prática comum em várias organizações.
Muitas empresas fornecem duas contas diferentes do Windows para qualquer administrador. Uma conta “regular” (exemplo SQLAuthority\Pinal) é usada para trabalhos gerais como e-mails, login no laptop etc. E outra conta “admin” (exemplo SQLAuthority\adm_pinal) para tarefas de nível administrativo a serem feitas no servidor. A conta normal não teria acesso aos SQL Servers, mas a conta de nível de administrador teria. Para fortalecer a segurança, as empresas usam uma conta do Windows para se conectar ao SQL Server.
Isso torna as coisas pouco interessantes. Se alguém tiver que se conectar ao SQL Server a partir do laptop onde o DBA fez login com a conta normal, ele deve fazer “Clique com o botão direito” com a tecla Shift pressionada e depois usar “Executar como usuário diferente” para usar a conta de administrador.
Pressionar a tecla shift é importante, caso contrário não veríamos essa opção. Depois de escolher isso, ele apareceria com a janela de nome de usuário e senha. Se você perceber, notará o caminho ssms.exe que é usado.
Outra maneira, que eu prefiro, é usar Executar como comando. O programa runas.exe permite que digamos ao Windows para executar um programa usando o ambiente de rede atual de um usuário diferente em vez do ambiente local. Os detalhes completos e opções da execução do programa podem ser encontrados no artigo do TechNet.
Eu normalmente criaria um atalho na área de trabalho. Clique com o botão direito e escolha um novo atalho como mostrado abaixo
e forneça a localização/parâmetro conforme abaixo
C:\Windows\System32\runas.exe /noprofile /env /user:SQLAuthority\adm_Pinal “C:\Program Files (x86)\Microsoft SQL Server\130 \Tools\Binn\ManagementStudio\Ssms.exe”
Você precisa alterar duas coisas, nome de usuário e o caminho correto para SSMS.exe
Depois de salvo, você pode clicar duas vezes e fornecer a senha no prompt de comando. Eu dei um nome de atalho como Admin SSMS na captura de tela abaixo. Assim que clico duas vezes, vejo abaixo
Uma credencial é fornecida, o SSMS será aberto com essa conta do Windows.
Devo concluir dizendo que, se você estiver usando a autenticação SQL, não precisará fazer isso porque as credenciais do Windows não são passadas para o SQL Server.