Skip to content

[QUESTION] Dependencies and Configuration needed for database connectivity using Manage Identity in AKS #1844

@dhananjay12

Description

@dhananjay12

Question

We have a spring app that we want to deploy on Azure AKS connecting to Azure SQL server. While regular JDBC URL along with username/password works fine, we wanted to use manage-identity instead. Our DevOps team implemented user-assigned managed identity on azure and a service account that injects the following env variable to each pod:

AZURE_CLIENT_ID: 
AZURE_TENANT_ID: 
AZURE_FEDERATED_TOKEN_FILE: 
AZURE_AUTHORITY_HOST: 

From spring app perspective we added azure-idenitty dependencies [within the app] (https://github.com/dhananjay12/learn-azure/blob/main/employee-service/pom.xml#L34-L42).

In addition we are adding following env variables to test:

SPRING_DATASOURCE_URL: jdbc:sqlserver://<sql-server>.database.windows.net:1433;database=<test-db>;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;Authentication=ActiveDirectoryMSI;
spring.jpa.hibernate.ddl-auto: create-drop
SPRING_DATASOURCE_DRIVER_CLASS_NAME: com.microsoft.sqlserver.jdbc.SQLServerDriver
SPRING_JPA_PROPERTIES_HIBERNATE_DIALECT: org.hibernate.dialect.SQLServer2012Dialect

However we are getting following exception:

2022-06-04 11:47:02.768 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:serverName Value:<sql-server>.database.windows.net
2022-06-04 11:47:02.771 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:portNumber Value:1433
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:databaseName Value:<test-db>
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:encrypt Value:true
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:trustServerCertificate Value:false
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:hostNameInCertificate Value:*.database.windows.net
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:loginTimeout Value:30
2022-06-04 11:47:02.780 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:authentication Value:ActiveDirectoryMSI
2022-06-04 11:47:02.787 DEBUG 1 --- [           main[] com.microsoft.sqlserver.jdbc.Driver      : Microsoft JDBC Driver 10.2.1.0 for SQL Server
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:serverName Value:<sql-server>.database.windows.net
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:portNumber Value:1433
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:databaseName Value:<test-db>
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:encrypt Value:true
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:trustServerCertificate Value:false
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:hostNameInCertificate Value:*.database.windows.net
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:loginTimeout Value:30
2022-06-04 11:47:02.788 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerDriver     : Property:authentication Value:ActiveDirectoryMSI
2022-06-04 11:47:02.888 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 created by (SQLServerDriver:1)
2022-06-04 11:47:02.905 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt server name: <sql-server>.database.windows.net port: 1433 InstanceName: null useParallel: false
2022-06-04 11:47:02.965 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt endtime: 1654343252891
2022-06-04 11:47:02.965 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt No: 0
2022-06-04 11:47:02.986 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 Connecting with server: <sql-server>.database.windows.net port: 1433 Timeout slice: 29925 Timeout Full: 30
2022-06-04 11:47:03.103 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 ClientConnectionId: 8eb03576-6386-4a51-a509-d36c7eb16ca6 Server returned major version:12
2022-06-04 11:47:04.179 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerException  : *** SQLException: com.microsoft.sqlserver.jdbc.SQLServerException: MSI Token failure: Failed to acquire access token from IMDS MSI Token failure: Failed to acquire access token from IMDS
2022-06-04 11:47:04.180 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerException  : com.microsoft.sqlserver.jdbc.SQLServerSecurityUtility.getMSIAuthToken(SQLServerSecurityUtility.java:460)com.microsoft.sqlserver.jdbc.SQLServerConnection.getFedAuthToken(SQLServerConnection.java:5319)com.microsoft.sqlserver.jdbc.SQLServerConnection.onFedAuthInfo(SQLServerConnection.java:5285)com.microsoft.sqlserver.jdbc.SQLServerConnection.processFedAuthInfo(SQLServerConnection.java:5172)com.microsoft.sqlserver.jdbc.TDSTokenHandler.onFedAuthInfo(tdsparser.java:305)com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:128)com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:37)com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:6154)com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:4777)com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:4715)com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7730)com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3786)com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:3233)com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2833)com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2671)com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1640)com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:936)com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121)com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364)com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206)com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476)com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561)com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:181)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:68)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:101)org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263)org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237)org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.injectServices(DefaultIdentifierGeneratorFactory.java:175)org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:286)org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243)org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:173)org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:127)org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1460)org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1494)org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58)org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409)org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396)org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154)org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908)org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)org.springframework.boot.SpringApplication.run(SpringApplication.java:307)org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)com.example.azure.mssql.EmployeeServiceApplication.main(EmployeeServiceApplication.java:10)java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)java.base/java.lang.reflect.Method.invoke(Unknown Source)org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)org.springframework.boot.loader.Launcher.launch(Launcher.java:108)org.springframework.boot.loader.Launcher.launch(Launcher.java:58)org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
2022-06-04 11:47:04.184 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 ClientConnectionId: 8eb03576-6386-4a51-a509-d36c7eb16ca6 sleeping milisec: 100
2022-06-04 11:47:04.285 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt server name: <sql-server>.database.windows.net port: 1433 InstanceName: null useParallel: false
2022-06-04 11:47:04.285 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt endtime: 1654343252891
2022-06-04 11:47:04.285 DEBUG 1 --- [           main[] c.m.s.j.internals.SQLServerConnection    : ConnectionID:1 This attempt No: 1
.
.
.
.
.
2022-06-04 11:47:32.025 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerException  : *** SQLException: com.microsoft.sqlserver.jdbc.SQLServerException: MSI Token failure: Failed to acquire access token from IMDS MSI Token failure: Failed to acquire access token from IMDS
2022-06-04 11:47:32.026 DEBUG 1 --- [           main[] c.m.s.jdbc.internals.SQLServerException  : com.microsoft.sqlserver.jdbc.SQLServerSecurityUtility.getMSIAuthToken(SQLServerSecurityUtility.java:460)com.microsoft.sqlserver.jdbc.SQLServerConnection.getFedAuthToken(SQLServerConnection.java:5319)com.microsoft.sqlserver.jdbc.SQLServerConnection.onFedAuthInfo(SQLServerConnection.java:5285)com.microsoft.sqlserver.jdbc.SQLServerConnection.processFedAuthInfo(SQLServerConnection.java:5172)com.microsoft.sqlserver.jdbc.TDSTokenHandler.onFedAuthInfo(tdsparser.java:305)com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:128)com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:37)com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:6154)com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:4777)com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:4715)com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7730)com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3786)com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:3233)com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2833)com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2671)com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1640)com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:936)com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121)com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364)com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206)com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476)com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561)com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:181)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:68)org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:101)org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263)org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237)org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.injectServices(DefaultIdentifierGeneratorFactory.java:175)org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:286)org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243)org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:173)org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:127)org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1460)org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1494)org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58)org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409)org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396)org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154)org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908)org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420)org.springframework.boot.SpringApplication.run(SpringApplication.java:307)org.springframework.boot.SpringApplication.run(SpringApplication.java:1317)org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)com.example.azure.mssql.EmployeeServiceApplication.main(EmployeeServiceApplication.java:10)java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)java.base/java.lang.reflect.Method.invoke(Unknown Source)org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)org.springframework.boot.loader.Launcher.launch(Launcher.java:108)org.springframework.boot.loader.Launcher.launch(Launcher.java:58)org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
2022-06-04 11:47:33.033 ERROR 1 --- [           main[] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Exception during pool initialization.
com.microsoft.sqlserver.jdbc.SQLServerException: MSI Token failure: Failed to acquire access token from IMDS
    at com.microsoft.sqlserver.jdbc.SQLServerSecurityUtility.getMSIAuthToken(SQLServerSecurityUtility.java:460) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.getFedAuthToken(SQLServerConnection.java:5319) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.onFedAuthInfo(SQLServerConnection.java:5285) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.processFedAuthInfo(SQLServerConnection.java:5172) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onFedAuthInfo(tdsparser.java:305) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:128) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:37) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:6154) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:4777) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:4715) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7730) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3786) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:3233) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2833) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2671) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1640) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:936) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-4.0.3.jar!/:na]
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:181) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:68) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:101) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.injectServices(DefaultIdentifierGeneratorFactory.java:175) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:286) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:173) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:127) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1460) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1494) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at com.example.azure.mssql.EmployeeServiceApplication.main(EmployeeServiceApplication.java:10) ~[classes!/:0.1.0]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na[]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na[]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na[]
    at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na[]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[app.jar:0.1.0[]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) ~[app.jar:0.1.0[]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[app.jar:0.1.0[]
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88) ~[app.jar:0.1.0[]
2022-06-04 11:47:33.037  WARN 1 --- [           main[] o.h.e.j.e.i.JdbcEnvironmentInitiator     : HHH000342: Could not obtain connection to query metadata
com.microsoft.sqlserver.jdbc.SQLServerException: MSI Token failure: Failed to acquire access token from IMDS
    at com.microsoft.sqlserver.jdbc.SQLServerSecurityUtility.getMSIAuthToken(SQLServerSecurityUtility.java:460) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.getFedAuthToken(SQLServerConnection.java:5319) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.onFedAuthInfo(SQLServerConnection.java:5285) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.processFedAuthInfo(SQLServerConnection.java:5172) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onFedAuthInfo(tdsparser.java:305) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:128) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:37) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:6154) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:4777) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:4715) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7730) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:3786) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:3233) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2833) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2671) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1640) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:936) ~[mssql-jdbc-10.2.1.jre11.jar!/:na]
    at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) ~[HikariCP-4.0.3.jar!/:na]
    at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-4.0.3.jar!/:na]
    at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:181) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:68) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:101) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.injectServices(DefaultIdentifierGeneratorFactory.java:175) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:286) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:173) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:127) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1460) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1494) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.20.jar!/:5.3.20]
    at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:420) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.6.8.jar!/:2.6.8]
    at com.example.azure.mssql.EmployeeServiceApplication.main(EmployeeServiceApplication.java:10) ~[classes!/:0.1.0]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na[]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na[]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na[]
    at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na[]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[app.jar:0.1.0[]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) ~[app.jar:0.1.0[]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[app.jar:0.1.0[]

(Redacted sql-server/db)

Libraries:

Spring boot - :2.6.8
mssql-jdbc - 10.2.1.jre11
azure-identity: 1.5.1

Can someone help if any more configuration is required to achieve the same along with links to any docs.
Thanks for seeing this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    EnhancementAn enhancement to the driver. Lower priority than bugs.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions