Свойства JDBC-драйвера
JDBC-драйвер для YDB поддерживает следующие конфигурационные свойства, которые можно указать в JDBC URL или передать через дополнительные свойства:
-
saFile— ключ сервисной учётной записи (Service Account Key). Значением свойства может быть содержимое ключа или путь к файлу с ключом. -
iamEndpoint— IAM-эндпойнт для аутентификации с помощью ключа сервисной учётной записи (Service Account Key). -
token— токен для аутентификации. Значением свойства может быть содержимое токена или путь к файлу с токеном. -
useMetadata— использование режима аутентификации Metadata. Возможные значения:true— использовать режим аутентификации Metadata;false— не использовать режим аутентификации Metadata.
Значение по умолчанию:
false. -
metadataURL— эндпойнт для получения токена в режиме аутентификации Metadata. -
localDatacenter— название локального датацентра, в котором выполняется приложение. -
secureConnection— использование TLS. Возможные значения:true— принудительно использовать TLS;false— не использовать TLS.
Обычно безопасное соединение указывается с помощью протокола
grpcs://в строке JDBC URL. Небезопасное соединение указывается с помощью протоколаgrpc://. -
secureConnectionCertificate— сертификат CA для TLS-соединения. Значением свойства может быть содержимое сертификата или путь к файлу с сертификатом.
Примечание
Ссылки на файлы в свойствах saFile, token или secureConnectionCertificate должны содержать префикс file:. Примеры:
-
saFile=file:~/mysakey1.json -
token=file:/opt/secret/token-file -
secureConnectionCertificate=file:/etc/ssl/cacert.cer
Использование режима QueryService
По умолчанию JDBC-драйвер для YDB использует старый API для обработки запросов, обеспечивая совместимость с предыдущими версиями YDB. Однако у этого API есть дополнительные ограничения. Чтобы отключить это поведение и использовать новый API QueryService, укажите свойство useQueryService=true в строке JDBC URL.
Примеры JDBC URL
- Локальный Docker контейнер с анонимной аутентификацией и без TLS:
jdbc:ydb:grpc://localhost:2136/local - Удаленный кластер, размещенный на собственном сервере:
jdbc:ydb:grpcs://<host>:2135/Root/<testdb>?secureConnectionCertificate=file:~/<myca>.cer - Экземпляр облачной базы данных с токеном:
jdbc:ydb:grpcs://<host>:2135/<path/to/database>?token=file:~/my_token - Экземпляр облачной базы данных с файлом сервисного аккаунта:
jdbc:ydb:grpcs://<host>:2135/<path/to/database>?saFile=file:~/sa_key.json