Suppport for refresh tokens
The OpenVDS tools support refresh_tokens instead of sd_tokens. When using refresh_tokens new sd_tokens will be generated when the current sd_tokens expires. This makes it possible to have short lived sd_tokens while still having lengthy import rutines.
Specifically SEGYImport requires the connection string to not specify the sd_token but instead specifying 5 other arguments delimited by a semi colon ; The arguments are: AuthTokenUrl ClientId ClientSecret Scopes RefreshToken
OpenVDS will use the additional arguments to make a "application/x-www-form-urlencoded" rest call to the AuthTokenUrl using the arguments as form parameters to generate a new access_token that will be used as the sd_token.
The code performing this task can be seen here: IORefreshToken.cpp
This is how VDSInfo would look if it used refresh_tokens:
VDSInfo --url sd://opendes/release13/sgy4/ABC91357 --connection "sdauthorityurl=https://some_url/osdu-seismic/api/v3;sdapikey=xx;AuthTokenUrl=some_auth_token_url;ClientId=some_client_id;ClientSecret=some_client_secret;Scopes=some_space_delimited_scope;RefreshToken=a_refresh_token"
In most application the sdapikey is ignored.
Its seems the current ingestion dag only support sd_tokens making it difficult to import large datasets.