Подключение к YDB в DBeaver (и DataGrip)

В документации к YDB есть статья о подключении к DBeaver и к DataGrip. Единственный момент, который был мне не понятен — как подключиться к Serverless YDB в Яндекс Облаке.

В документации указана следующая строка подключения:

text
jdbc:ydb:<ydb_endpoint>/<ydb_database>?useQueryService=true

Эндпойнт YDB в облаке имеет следующий вид:

text
grpcs://ydb.serverless.yandexcloud.net:2135/?database=/ru-central1/xxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyy

Для подключения нам понадобится сервисный аккаунт с правами доступа к нужной БД.

Создаём ключ доступа для сервисного аккаунта:

bash
yc iam key create --service-account-id xxxxxxxxxxxxxxxxxxxx -o key.json

Размещаем этот ключ где-то в файловой системе (у меня это ~/.config/ydb/).

Тогда строка подключения будет выглядеть так:

text
jdbc:ydb:grpcs://ydb.serverless.yandexcloud.net:2135/ru-central1/xxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyy?useQueryService=true&saFile=~/.config/ydb/key.json

Обратите внимание на то что адрес эндпойнта немного видоизменился в строке подключения (пропала часть ?database=).