Partilhar via


Dependências de recursos do Microsoft JDBC Driver para SQL Server

Baixar driver JDBC

Este artigo lista as bibliotecas das quais o Microsoft JDBC Driver para SQL Server depende. O projeto tem as seguintes dependências:

Tempo de compilação

  • com.azure:azure-security-keyvault-keys: Biblioteca de Cliente do Microsoft Azure para chaves do Key Vault para o driver JDBC versão 9.2 ou superior ou com.microsoft.azure:azure-keyvault: SDK do Microsoft Azure para o Cofre de Chaves para o driver JDBC versão 8.4 ou inferior, para o recurso Cofre de Chaves do Azure Always Encrypted. (facultativo)
  • com.azure:azure-identity: Biblioteca Cliente do Microsoft Azure para Gestão de Identidades para driver JDBC versão 9.2 e superior ou com.microsoft.azure:adal4j: Biblioteca de Autenticação do Microsoft Entra para driver JDBC versão 8.4 e inferior para funcionalidades de autenticação do Microsoft Entra e funcionalidade de Cofre de Chaves do Azure. (facultativo)
  • com.microsoft.azure:msal4j: Microsoft Authentication Library (MSAL) para Java. (facultativo)
  • org.antlr:antlr4-runtime: ANTLR 4 Runtime para a funcionalidade useFmtOnly. (facultativo)
  • org.osgi:org.osgi.core: Biblioteca OSGi Core para suporte ao OSGi Framework.
  • org.osgi:org.osgi.service.jdbc: Código complementar OSGi para JDBC.
  • com.google.code.gson: Analisador JSON para Always Encrypted com recurso de enclaves seguros. (facultativo)
  • org.bouncycastle.bcprov-jdk18on: Bouncy Castle Provider for Always Encrypted com recurso de enclaves seguros apenas para JAVA 8. (facultativo)

Tempo de execução

Projetos que exigem qualquer um dos recursos anteriores devem declarar explicitamente as respetivas dependências em seu arquivo POM que correspondem às dependências da versão do driver usado.

Por exemplo: Se você estiver usando o recurso de autenticação do Microsoft Entra com o driver JDBC versão 10.2 e superior, deverá declarar a dependência azure-identity no arquivo POM do projeto. Veja o seguinte trecho:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>10.2.0.jre11</version>
</dependency>

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
    <version>1.4.3</version>
</dependency>

Por exemplo: Se você estiver usando o recurso de autenticação do Microsoft Entra com o driver JDBC versão 8.4 e inferior, deverá declarar as dependências adal4j e client-runtimes no arquivo POM do projeto. Veja o seguinte trecho:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>8.4.0.jre11</version>
</dependency>

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>adal4j</artifactId>
    <version>1.6.5</version>
</dependency>

<dependency>
    <groupId>com.microsoft.rest</groupId>
    <artifactId>client-runtime</artifactId>
    <version>1.7.4</version>
</dependency>

Por exemplo: Se você estiver usando o recurso Cofre da Chave do Azure com o driver JDBC versão 10.2 e superior, deverá declarar as dependências azure-security-keyvault-keys e azure-identity no arquivo POM do projeto. Veja o seguinte trecho:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>10.2.0.jre11</version>
</dependency>

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
    <version>1.4.3</version>
</dependency>

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-security-keyvault-keys</artifactId>
    <version>4.3.6</version>
</dependency>

Por exemplo: Se você estiver usando o recurso Cofre de Chaves do Azure com o driver JDBC versão 8.4 e inferior, deverá declarar as dependências azure-keyvault, adal4je client-runtime no arquivo POM do projeto. Veja o seguinte trecho:

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>8.4.0.jre11</version>
</dependency>

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>adal4j</artifactId>
    <version>1.6.5</version>
</dependency>

<dependency>
    <groupId>com.microsoft.rest</groupId>
    <artifactId>client-runtime</artifactId>
    <version>1.7.4</version>
</dependency>

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>azure-keyvault</artifactId>
    <version>1.2.4</version>
</dependency>

Observação

Certifique-se de usar a versão do arquivo POM que acompanha a versão do driver JDBC que você está usando. As dependências e versões podem ter sido alteradas.

Se você estiver usando o Maven para criar ou testar seu projeto, o Maven baixará automaticamente as bibliotecas dependentes no arquivo POM junto com suas bibliotecas transitivas. Você também pode usar o Maven Dependency Plugin para baixar todas as dependências do projeto para um local desejado. Se não estiveres a usar o Maven, precisas de baixar manualmente as dependências e as dependências transitivas para garantir que tenhas todas as versões corretas de cada biblioteca. Depois de baixar as bibliotecas dependentes necessárias, adicione-as ao classpath do projeto para executar seu aplicativo.

Requisitos de dependência para o driver JDBC

Trabalhar com o provedor do Azure Key Vault

  • Driver JDBC versão 12.10.0 — versões de dependências: Azure-security-keyvault-keys (versão 4.9.2) e Azure-identity (versão 1.15.3) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 12.8.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.7.3) e Azure-identity (versão 1.12.2) e suas dependências (exemplo de aplicativo)
  • Driver JDBC versão 12.6.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.7.3), Azure-identity (versão 1.11.1) e as suas dependências (aplicação de exemplo)
  • Driver JDBC versão 12.4.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.6.1) e Azure-identity (versão 1.9.0) e suas dependências (aplicativo de exemplo)
  • Driver JDBC versão 12.2.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.5.3) e Azure-identity (versão 1.7.0) e suas dependências (aplicativo de exemplo)
  • Driver JDBC versão 11.2.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.4.1) e Azure-identity (versão 1.5.0) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 10.2.0 — versões de dependência: Azure-security-keyvault-keys (versão 4.3.6) e Azure-identity (versão 1.4.3) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 9.4.1 — versões de dependências: Azure-security-keyvault-keys (versão 4.2.8), Azure-identity (versão 1.3.3) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 9.2.1 — versões de dependência: Azure-security-keyvault-keys (versão 4.2.1) e Azure-identity (versão 1.1.3) e suas dependências (aplicativo de exemplo)
  • Driver JDBC versão 8.4.1 — versões de dependência: Azure-Keyvault (versão 1.2.4), Adal4j (versão 1.6.5), Client-Runtime-for-AutoRest (versão 1.7.4) e suas dependências (aplicativo de exemplo)
  • Driver JDBC versão 8.2.2 — versões de dependência: Azure-Keyvault (versão 1.2.2), Adal4j (versão 1.6.4), Client-Runtime-for-AutoRest (versão 1.7.0) e suas dependências (exemplo de aplicativo)
  • Driver JDBC versão 7.4.1 — versões de dependência: Azure-Keyvault (versão 1.2.1), Adal4j (versão 1.6.4), Client-Runtime-for-AutoRest (versão 1.6.10) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 7.2.2 — versões de dependência: Azure-Keyvault (versão 1.2.0), Azure-Keyvault-Webkey (versão 1.2.0), Adal4j (versão 1.6.3), Client-Runtime-for-AutoRest (1.6.5) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 7.0.0 — versões de dependência: Azure-Keyvault (versão 1.0.0), Adal4j (versão 1.6.0) e as suas dependências (aplicação de exemplo)
  • Driver JDBC versão 6.4.0 — versões de dependência: Azure-Keyvault (versão 1.0.0), Adal4j (versão 1.4.0) e as suas dependências (aplicação de exemplo)
  • Driver JDBC versão 6.2.2 — versões de dependência: Azure-Keyvault (versão 1.0.0), Adal4j (versão 1.4.0) e suas dependências (aplicação de exemplo)
  • Driver JDBC versão 6.0.0 — versões de dependência: Azure-Keyvault (versão 0.9.7), Adal4j (versão 1.3.0) e suas dependências ( aplicação de exemplo)

Observação

Com as versões de driver 6.2.2 e 6.4.0, a dependência azure-keyvault-java foi atualizada para a versão 1.0.0. No entanto, a nova versão não era compatível com a versão anterior (0.9.7) e quebra a implementação existente no driver. A nova implementação no driver exigiu alterações de API, o que, por sua vez, interrompe os programas cliente que usam o Provedor do Cofre de Chaves do Azure.

Este problema é resolvido com a(s) versão(ões) mais recente(s) do controlador (7.0.0 em diante). O construtor removido que utilizava o mecanismo de retorno de chamada de autenticação foi reintegrado ao Provedor do Cofre de Chaves do Azure para manter a compatibilidade retroativa.

Trabalhar com autenticação Microsoft Entra

  • Driver JDBC versão 12.10.0 — Versões de dependência: identidade do Azure (versão 1.15.3) e suas dependências.
  • Driver JDBC versão 12.8.0 — Versões de dependência: Azure-identity (versão 1.12.2), Msal4j (versão 1.15.1) e suas dependências.
  • Driver JDBC versão 12.6.0 — versões de dependência: identidade do Azure (versão 1.11.1), Msal4j (versão 1.14.1) e suas dependências.
  • Driver JDBC versão 12.4.0 — versões de dependência: Azure-identity (versão 1.9.0), Msal4j (versão 1.13.8) e suas dependências.
  • Driver JDBC versão 12.2.0 — Versões de dependência: Azure-identity (versão 1.7.0), Msal4j (versão 1.13.3) e suas dependências.
  • Driver JDBC versão 11.2.0 — Versões de dependência: identidade do Azure (versão 1.5.0) e suas dependências.
  • Driver JDBC versão 10.2.0 — Versões de dependência: identidade do Azure (versão 1.4.3) e suas dependências.
  • Driver JDBC versão 9.4.1 — Versões de dependência: identidade do Azure (versão 1.3.3) e suas dependências.
  • Driver JDBC versão 9.2.1 — Versões de dependência: identidade do Azure (versão 1.1.3) e suas dependências.
  • JDBC Driver versão 8.4.1 — versões de dependência: Adal4j (versão 1.6.5), Client-Runtime-for-AutoRest (1.7.4) e suas dependências.
  • JDBC Driver versão 8.2.2 — versões de dependência: Adal4j (versão 1.6.4), Client-Runtime-for-AutoRest (1.7.0) e suas dependências. Nesta versão do driver, sqljdbc_auth.dll foi renomeado para mssql-jdbc_auth-\<version>-\<arch>.dll.
  • JDBC Driver versão 7.4.1 — versões de dependência: Adal4j (versão 1.6.4), Client-Runtime-for-AutoRest (1.6.10) e suas dependências
  • JDBC Driver versão 7.2.2 — versões de dependência: Adal4j (versão 1.6.3), Client-Runtime-for-AutoRest (1.6.5) e suas dependências
  • JDBC Driver versão 7.0.0 — versões de dependência: Adal4j (versão 1.6.0) e suas dependências
  • JDBC Driver versão 6.4.0 — versões de dependência: Adal4j (versão 1.4.0) e suas dependências
  • JDBC Driver versão 6.2.2 — versões de dependência: Adal4j (versão 1.4.0) e suas dependências
  • JDBC Driver versão 6.0.0 — versões de dependência: Adal4j (versão 1.3.0) e suas dependências. Nesta versão do driver, você pode se conectar usando ActiveDirectoryIntegrated Modo de Autenticação, somente em um sistema operacional Windows e usando sqljdbc_auth.dll e a Active Directory Authentication Library para SQL Server (ADALSQL.DLL).

A partir da versão 6.4.0 do driver, os aplicativos não exigem necessariamente o uso de ADALSQL.DLL em sistemas operacionais Windows. Para sistemas operativos não Windows, o driver requer um tíquete Kerberos para funcionar com a Autenticação Integrada do Active Directory. Para obter mais informações sobre como se conectar ao Active Directory usando Kerberos, consulte Configurar tíquete Kerberos no Windows, Linux e macOS.

Para sistemas operativos Windows, o driver procura sqljdbc_auth.dll por padrão e não requer a configuração de bilhetes Kerberos ou dependências das bibliotecas do Azure. Se sqljdbc_auth.dll não estiver disponível, o driver procura o bilhete Kerberos para se autenticar no Active Directory como nos outros sistemas operacionais.

A partir da versão do driver 8.2.2, sqljdbc_auth.dll é renomeado para mssql-jdbc_auth-\<version>-\<arch>.dll. Por exemplo, mssql-jdbc_auth-8.2.2.x64.dll.

Além do mssql-jdbc_auth-<versão>-<arch>.dll (disponível no pacote de driver JDBC), a Biblioteca de Autenticação do Ative Directory do Azure (ADAL.DLL) também deve ser instalada para autenticação integrada do Ative Directory. A Biblioteca de Autenticação do Ative Directory do Microsoft Azure pode ser instalada a partir do Microsoft ODBC Driver para SQL Server ou Microsoft OLE DB Driver para SQL Server. O driver JDBC suporta apenas a versão 1.0.2028.318 e superior para ADAL.DLL.

Você pode obter um exemplo de aplicativo que usa esse recurso.

Ver também

repositório GitHub do JDBC Driver
Referência da API do JDBC Driver