class Rails::Vault::JWT::TokenProvider::RoleID

Public Class Methods

new(*args, mount_name: 'approle', role_id: nil, secret_id: nil, token_ttl: '5m') click to toggle source
# File lib/rails/vault/jwt/token_provider/role_id.rb, line 8
def initialize(*args, mount_name: 'approle', role_id: nil, secret_id: nil, token_ttl: '5m')
  super
  @mount_name = mount_name
  @role_id = role_id || ENV.fetch('VAULT_ROLE_ID')
  @secret_id = secret_id || ENV.fetch('VAULT_SECRET_ID')
  @token_ttl = token_ttl
end

Public Instance Methods

auth() click to toggle source
# File lib/rails/vault/jwt/token_provider/role_id.rb, line 16
def auth
  client.logical.write("auth/#{@mount_name}/login", role_id: @role_id, secret_id: @secret_id,
                                                    ttl: @token_ttl)&.auth
end