Sugiro usando o comando sqlcmd . O utilitário está disponível no driver ODBC da Microsoft para SQL Server no Linux.
Estou tentando conectar-me ao MS SQLServer de um aplicativo que escrevi (usando o Qt) que é executado no Linux. Aqui estão alguns detalhes da configuração:
A caixa SQLServer (SQLBox) faz parte do meu domínio ( mydomain.local
).
Este domínio usa o Active Directory em execução em ADBox.mydomain.local
,
A caixa do Linux não faz parte do domínio.
O usuário na caixa do Linux está conectado localmente. ou seja, mvincent@linuxbox
.
Instalei o Kerberos no Linux e configurei-o para se conectar a ADBox.mydomain.local
.
Usando kinit [email protected]
, recebo um ticket retornado que pode ser visto usando klist
.
[email protected]
é configurado com permissões para acessar o SQLServer no SQLBox.
Estou usando o ODBC para conectar-me ao SQLServer.
O SQLServer é configurado para aceitar conexões apenas dos usuários do Active Directory. Um nome de usuário e senha não podem ser usados para se conectar ao SQLServer.
Minha string de conexão ODBC inclui Trusted_Connection=yes
.
Meu aplicativo Qt será executado como o usuário conectado no Linux. Isso será mvincent.LinuxBox. Eu não posso conseguir um ticket para esse usuário, então a conexão é recusada.
Eu posso obter um tíquete para [email protected]
, mas não consigo descobrir como inserir esse tíquete ou esse usuário na string de conexão ODBC.
Como posso fazer o que estou tentando fazer?
Obrigado.
Sugiro usando o comando sqlcmd . O utilitário está disponível no driver ODBC da Microsoft para SQL Server no Linux.