Подключение к Azure SQL с использованием аутентификации на основе маркеров доступа - PullRequest
0 голосов
/ 04 декабря 2018

Можно ли запускать миграции из командной строки liquibase, которые подключаются к Azure SQL, с помощью аутентификации на основе маркеров Azure AD (с использованием принципалов службы AD)?(это означает, что имя пользователя или пароль не передаются в строке подключения или в качестве свойств)

Я могу запустить код Java, который открывает соединения JDBC с базой данных SQL Azure, используя этот метод аутентификации, как описано здесь .

Для этого требуется аутентификация в AD и получение токена доступа с использованием библиотеки ADAL4J, а затем передача этого токена объекту DataSource перед вызовом getConnection ().

Отрывок кода:

SQLServerDataSource ds = new SQLServerDataSource();
ds.setServerName("aad-managed-demo.database.windows.net"); 
ds.setDatabaseName("demo"); 
ds.setAccessToken(accessToken);

Connection connection = ds.getConnection();

Однако при выполнении миграций командной строки liquibase невозможно установить свойство accesstoken, поскольку его нет в списке допустимых свойств.А согласно документации, токены доступа не могут быть установлены через строку подключения.

Есть ли способ получить liquibase для подключения к базе данных SQL с использованием этого типа аутентификации?

Требуется ли для этого использованиереализация класса пользовательских свойств?(См. Параметр командной строки: --propertyProviderClass)

Есть ли какие-либо указатели о том, как это сделать?

...