Oi alguem,
conforme o título mencionado, o código trabalhado com o nó 10, não funciona com o nó 12, ele relata:
Conexão perdida - 3540: erro: 1425F102 : Rotinas SSL protocolo não suportado
{"message": "Falha ao conectar ao localhost: 1433 - Não é possível chamar a gravação depois que um fluxo foi destruído", "code": "ESOCKET"}
qualquer ajuda ? o sistema operacional é Windows 10 64 bits, SQL Server é 2012 64 bits
problema resolvido!
com nó 12+, configuração alterada como:
configuração const: ConnectionConfig = {
servidor: '...',
autenticação: {tipo: 'padrão', opções: {nome do usuário: '...', senha: '...'}},
opções: {..., criptografar: falso }
}
Ei @ c5soft! 👋
Eu entendo que desativar a criptografia "resolveu" seu problema aqui. Isso pode ser aceitável para o seu caso de uso, mas desabilitar a criptografia não é realmente uma solução. 😅
Para aqueles que se deparam com um erro semelhante, isso ocorre porque, desde o Node.js 12, as configurações padrão de TLS foram restritas. Provavelmente, seu SQL Server não oferece suporte a TLS 1.2, mas é exigido por padrão no Node.js 12. Você pode alterar isso por meio de uma sinalização de linha de comando ao iniciar o nó (por exemplo, --tls-min-v1.0
), ou passando um personalizado cryptoCredentialsDetails
opção para o Connection
construtor que especifica minVersion: 'TLSv1'
ou qualquer versão TLS que você precisa usar.
Caso alguém se depare com isso, a mesma coisa aconteceu com activeDirectory2 para node, baseado em LDAPJS: adicionar essa opção a tlsOptions resolveu o problema
problema resolvido!
com nó 12+, configuração alterada como:
configuração const: ConnectionConfig = {
servidor: '...',
autenticação: {tipo: 'padrão', opções: {nome do usuário: '...', senha: '...'}},
opções: {..., criptografar: falso }
}
Obrigado !!!
Ei @ c5soft! 👋
Eu entendo que desativar a criptografia "resolveu" seu problema aqui. Isso pode ser aceitável para o seu caso de uso, mas desabilitar a criptografia não é realmente uma solução. 😅
Para aqueles que se deparam com um erro semelhante, isso ocorre porque, desde o Node.js 12, as configurações padrão de TLS foram restritas. Provavelmente, seu SQL Server não oferece suporte a TLS 1.2, mas é exigido por padrão no Node.js 12. Você pode alterar isso por meio de uma sinalização de linha de comando ao iniciar o nó (por exemplo,
--tls-min-v1.0
), ou passando um personalizadocryptoCredentialsDetails
opção para oConnection
construtor que especificaminVersion: 'TLSv1'
ou qualquer versão TLS que você precisa usar.
muito obrigado!
funciona no meu projeto nestjs!
para quem tem o mesmo problema em nestjs.
TypeOrmModule.forRoot({
type: 'mssql',
host: 'localhost',
port: 1433,
username: 'root',
password: 'root',
database: 'test',
entities: [],
synchronize: true,
options: {
cryptoCredentialsDetails: {
minVersion: 'TLSv1'
}
}
}),
Comentários muito úteis
problema resolvido!
com nó 12+, configuração alterada como:
configuração const: ConnectionConfig = {
servidor: '...',
autenticação: {tipo: 'padrão', opções: {nome do usuário: '...', senha: '...'}},
opções: {..., criptografar: falso }
}