JetBrains DataGrip - Azure SQL - соединение с Active Directory - пароль

Можно ли подключиться к базе данных SQL Azure так же, как и в Microsoft SQL Management Studio - опция "Active Directory - пароль".

введите описание изображения здесь

Я следовал приведенным здесь инструкциям (документация JetBrains), но когда я выбираю "Использовать проверку подлинности домена Windows" (как я должен сделать для Azure Active Directory), он не позволяет мне вводить учетные данные, как это делает SSMS.

С SSMS все работает нормально, но с DataGrip мне не повезло. Эта опция просто не поддерживается там?

введите описание изображения здесь

2 ответа

Решение было опубликовано https://codejuicer.com/, скопировано из следующего блога: https://codejuicer.com/2018/08/29/datagrip-and-azure-sql-server-active-directory-howto/

Шаг 1: Получить несколько необходимых JAR-файлов. Основная библиотека, с которой вы будете работать, это ADAL4J ( https://github.com/AzureAD/azure-activedirectory-library-for-java/wiki/ADAL4J-Basics). Самым простым способом сделать этот шаг, на мой взгляд, является использование barebones Maven pom.xml. Таким образом, вам не нужно компилировать из исходного кода и находить все зависимости вручную. Horray!

Если у вас не установлен Maven ( https://maven.apache.org/), он вам понадобится. Если вы предпочитаете Gradle, я уверен, что то же самое может быть достигнуто с этим.

Вот как выглядит мой pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project
    xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.foo</groupId>
  <artifactId>bar</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <dependencies>
  <dependency>
          <groupId>com.microsoft.azure</groupId>
      <artifactId>adal4j</artifactId>
      <version>1.6.2</version>
  </dependency>
  </dependencies>
  <build>
    <directory>lib</directory>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <configuration>
          <outputDirectory>
            ${project.build.directory}
          </outputDirectory>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

Теперь выполните эту команду, где бы ни находился ваш файл pom.xml:

mvn clean dependency:copy-dependencies

Он создаст каталог "lib", содержащий все необходимые вам фляги.

Шаг 2. Добавление JAR-файлов в драйвер Azure (Microsoft) 1. В окне "Источники данных и драйверы" (меню "Файл") выберите драйвер Azure (Microsoft). На панели файлов драйверов нажмите кнопку + и выберите "Пользовательские файлы JAR..." 2. Перейдите к файлам JAR, выбранным на шаге 1. Выберите все из них. Ваш экран должен выглядеть примерно так (кроме причудливых размытостей, чтобы скрыть мою сверхсекретную информацию). Шаг 3. Изменение параметров расширенного подключения Существует только одна вещь, которую нужно изменить для проверки подлинности Active Directory. Метод аутентификации. Это действительно легко.

На данный момент, я предполагаю, что у вас есть существующее соединение. Если нет, создайте его и выберите драйвер Azure (Microsoft).

Перейдите на вкладку "Дополнительно". Мне нравится сортировать варианты по имени. Как бы вы это ни делали, найдите параметр "аутентификация".

Щелкните в столбце "Значение" и выберите "ActiveDirectoryPassword" (если вы используете Windows™ и используете встроенную AD… выберите ActiveDirectoryIntegrated). Я полагаю, мне не нужно говорить вам "нажать OK или Применить".

Удачи (надеюсь)! На этом этапе вы сможете войти в свой экземпляр базы данных. Конечно, это предполагает, что ваши учетные данные и имя хоста верны. Надеюсь, это поможет!

Возможно.

  1. Используйте драйвер JTDS, а не Microsoft.
  2. Перейдите на вкладку "Дополнительно" свойств источника данных, установите для USENTLMV2 значение true и укажите доменное имя в поле DOMAIN. введите описание изображения здесь
  3. Затем введите свои учетные данные Active Directory в поля пользователя и пароля и нажмите "Проверить подключение".
Другие вопросы по тегам