module VaultPlugin::API::Backend
Public Instance Methods
creation_ttl()
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 55 def creation_ttl Client.lookup_self[:data][:creation_ttl] end
issue(ttl, role)
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 46 def issue(ttl, role) begin opts = options ttl role.nil? ? Client.issue_token(opts) : Client.issue_role_token(role, metadata) rescue StandardError => e log_halt 500, 'Failed to generate Vault token ' + e.message end end
metadata()
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 35 def metadata return {} unless add_token_metadata? { display_name: vault_client, meta: { client: vault_client, smartproxy_generated: true } } end
options(ttl)
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 41 def options(ttl) options = metadata.merge token_options options.merge(ttl: ttl) unless ttl.nil? end
renew()
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 59 def renew begin Client.renew_self rescue StandardError => e puts 'Failed to renew Vault token ' + e.message end end
start_renewal()
click to toggle source
# File lib/smart_proxy_vault/api.rb, line 67 def start_renewal Thread.new do while true do renew sleep to_seconds(creation_ttl/3) end end end