class Aws::RDS::AuthTokenGenerator

def auth_token(params)

Returns:
  • (String) -
def auth_token(params)
  region = params.fetch(:region)
  endpoint = params.fetch(:endpoint)
  user_name = params.fetch(:user_name)
  param_list = Aws::Query::ParamList.new
  param_list.set('Action', 'connect')
  param_list.set('DBUser', user_name)
  signer = Aws::Sigv4::Signer.new(
    service: 'rds-db',
    region: region,
    credentials_provider: @credentials
  )
  url = "https://" + endpoint + "/?#{param_list.to_s}"
  presigned_url = signer.presign_url(
    http_method: 'GET',
    url: url,
    body: '',
    expires_in: 900
  ).to_s
  # Remove extra scheme for token
  presigned_url[8..-1]
end