Estou tentando conectar-me de uma máquina Linux ao SQL Server com um usuário de domínio.
Encontrei algumas soluções para fazer isso no Windows em outro domínio. Por exemplo este
Quando o Linux está no domínio, posso me conectar ao domínio usando kinit
o usuário do domínio e depois acessar o banco de dados, mas kinit
falha quando meu Linux não está no domínio (talvez eu precise fornecer parâmetros extras?)
Posso me conectar com êxito como usuário de domínio usando o Samba, a um diretório compartilhado, mesmo que meu Linux não esteja no domínio, usando um nome de usuário, senha e nome de domínio. Isso me dá a ideia de que deveria ser possível.
Então, minha pergunta é: pode ser configurado sem adicionar a máquina Linux ao domínio do SQL Server?
Sim, é possível conectar-se ao SQL Server a partir de uma máquina Linux sem associar a máquina ao domínio, aproveitando a autenticação Kerberos.
Certifique-se de ter as ferramentas de cliente Kerberos necessárias instaladas. Nas distribuições Ubuntu Linux, você pode instalá-los executando:
Atualize sua configuração Kerberos (/etc/krb5.conf) para incluir as informações do domínio. Exemplo:
Obtenha um Ticket Granting Ticket (TGT) com o kinit:
Você será solicitado a inserir a senha do usuário do domínio. Se for bem-sucedido, este comando armazenará em cache seu ticket Kerberos localmente. Em seguida, verifique o tíquete Kerberos:
Isso mostrará o ticket em cache, confirmando que você obteve um TGT com sucesso.
Conecte-se ao servidor SQL usando autenticação Kerberos:
se você tiver o Kerberos configurado corretamente, poderá omitir a senha:
A opção -K indica o uso da autenticação Kerberos e -E usa a conexão confiável (que aproveita o ticket Kerberos).
Configuração adicional (às vezes necessária) Certifique-se de que o SQL Server tenha o nome principal de serviço (SPN) correto configurado. Normalmente, isso precisa ser feito no controlador de domínio. Exemplo:
Se o cache de credenciais do Kerberos não estiver no local padrão, talvez seja necessário definir a variável de ambiente KRB5CCNAME:
Isso deve resolver!
Você pode encontrar ajuda para conectar outras versões do Linux na documentação da minha universidade https://www.pdc.kth.se/support/documents/login/linux_login.html , você encontrará muitos documentos úteis lá, KTH e MIT são os Mantenedores do Kerberos.
Boa sorte!