Autenticación Windows (SSPI)
La autenticación integrada de Windows (SSPI) permite conectar sin especificar usuario y contraseña, usando las credenciales del usuario de Windows actual.
Requisitos
Sección titulada «Requisitos»- SQL Server configurado para aceptar Windows Authentication
- El usuario de Windows debe tener acceso a la base de datos
- Solo funciona en entornos Windows
Configuración
Sección titulada «Configuración»MSSQL_AUTH=integratedMSSQL_SERVER=your-serverMSSQL_DATABASE=YourDatabaseNo es necesario definir MSSQL_USER ni MSSQL_PASSWORD.
Connection string generado
Sección titulada «Connection string generado»server=your-server;port=1433;database=YourDatabase;integrated security=SSPI;encrypt=false;trustservercertificate=trueEl valor de
encryptytrustservercertificatedepende deDEVELOPER_MODEyMSSQL_ENCRYPT.
Claude Desktop
Sección titulada «Claude Desktop»Servidor moderno (SQL Server 2016+)
Sección titulada «Servidor moderno (SQL Server 2016+)»{ "mssql-windows": { "command": "mcp-go-mssql.exe", "env": { "MSSQL_SERVER": "your-server", "MSSQL_DATABASE": "YourDatabase", "MSSQL_AUTH": "integrated", "DEVELOPER_MODE": "false", "MSSQL_READ_ONLY": "true" } }}Servidor legacy (SQL Server 2008/2012)
Sección titulada «Servidor legacy (SQL Server 2008/2012)»SQL Server 2008/2012 no soporta TLS 1.2, que es el mínimo requerido por el driver Go. Es necesario desactivar el cifrado.
{ "mssql-legacy": { "command": "mcp-go-mssql.exe", "env": { "MSSQL_SERVER": "legacy-server", "MSSQL_DATABASE": "LegacyDB", "MSSQL_AUTH": "integrated", "DEVELOPER_MODE": "true", "MSSQL_ENCRYPT": "false" } }}
MSSQL_ENCRYPT=falsesolo funciona conDEVELOPER_MODE=true. En producción el cifrado es obligatorio.
Solución de problemas
Sección titulada «Solución de problemas»- Login failed: Verifica que el usuario de Windows tiene un login en SQL Server
- SSPI handshake failed: Verifica que SQL Server acepta Windows Authentication en su configuración
- Cannot generate SSPI context: Puede indicar problemas de DNS o Kerberos en el dominio
- TLS handshake failed: SQL Server 2008/2012 no soporta TLS 1.2. Configura
MSSQL_ENCRYPT=falseconDEVELOPER_MODE=true - Connection timeout: Verifica que el puerto está correctamente configurado (
MSSQL_PORT, default 1433)