Redgate Summit – The Database DevOps Transformation Watch now
PASS Data Community Summit logo

PASS Data Community Summit

A hybrid conference in Seattle and online

15-18 November

Flyway Documentation

This documentation is deprecated. The new documentation can now be found on documentation.red-gate.com

Poll

JDBC Properties

Flyway Teams

Description

JDBC properties to pass to the JDBC driver when establishing a connection.

For example to supply a property property1 with the value value1, you can set flyway.jdbcProperties.key1=value1. Flyway will then set the key1 property on the jdbc driver to value1 when it establishes a connection.

Usage

Commandline

./flyway -jdbcProperties.accessToken=my-access-token info

Configuration File

flyway.jdbcProperties.accessToken=my-access-token

Environment Variable

FLYWAY_JDBC_PROPERTIES_accessToken=access-token

API

Map<String, String> properties = new HashMap<>();
properties.put("accessToken", "access-token");

Flyway.configure()
    .jdbcProperties(properties)
    .load()

Gradle

flyway {
    jdbcProperties = ['accessToken' : 'access-token']
}

Maven

<configuration>
    <jdbcProperties>
        <accessToken>access-token</accessToken>
    </jdbcProperties>
</configuration>

Use Cases

Passing access tokens

Some database JDBC drivers support authentication with access tokens, but this token may not be supported in the URL (see SQL Server Azure Active Directory). You may also not want to leak information such as tokens in the URL. In these cases, an additional properties object can be passed to the JDBC driver which can be configured with jdbcProperties allowing you to achieve, for example, authentication that wasn’t previously possible.