Module: Compliance::API::Login::ComplianceServer
- Defined in:
- lib/bundles/inspec-compliance/api/login.rb
Class Method Summary collapse
- .compliance_login_refresh_token(options) ⇒ Object
- .compliance_login_user_pass(options) ⇒ Object
- .compliance_store_access_token(options, token) ⇒ Object
-
.compliance_verify_thor_options(o) ⇒ Object
Compliance login requires ‘–user` or `–refresh_token` If `–user` then either `–password`, `–token`, or `–refresh-token`, is required.
- .login(options) ⇒ Object
Class Method Details
.compliance_login_refresh_token(options) ⇒ Object
106 107 108 109 110 111 112 113 114 115 |
# File 'lib/bundles/inspec-compliance/api/login.rb', line 106 def self.compliance_login_refresh_token() success, msg, token = Compliance::API.get_token_via_refresh_token( ['url'], ['refresh_token'], ['insecure'], ) raise msg unless success compliance_store_access_token(, token) end |
.compliance_login_user_pass(options) ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/bundles/inspec-compliance/api/login.rb', line 94 def self.compliance_login_user_pass() success, msg, token = Compliance::API.get_token_via_password( ['url'], ['user'], ['password'], ['insecure'], ) raise msg unless success compliance_store_access_token(, token) end |
.compliance_store_access_token(options, token) ⇒ Object
117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/bundles/inspec-compliance/api/login.rb', line 117 def self.compliance_store_access_token(, token) config = Compliance::Configuration.new config.clean config['user'] = ['user'] if ['user'] config['server'] = ['url'] config['insecure'] = ['insecure'] || false config['server_type'] = ['server_type'].to_s config['token'] = token config['version'] = Compliance::API.version(config) config.store config end |
.compliance_verify_thor_options(o) ⇒ Object
Compliance login requires ‘–user` or `–refresh_token` If `–user` then either `–password`, `–token`, or `–refresh-token`, is required
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
# File 'lib/bundles/inspec-compliance/api/login.rb', line 134 def self.(o) error_msg = [] error_msg.push('Please specify a server using `inspec compliance login https://SERVER`') if o['server'].nil? if o['user'].nil? && o['refresh_token'].nil? error_msg.push('Please specify a `--user=\'USER\'` or a `--refresh-token=\'TOKEN\'`') end if o['user'] && o['password'].nil? && o['token'].nil? && o['refresh_token'].nil? error_msg.push('Please specify either a `--password`, `--token`, or `--refresh-token`') end raise ArgumentError, error_msg.join("\n") unless error_msg.empty? end |
.login(options) ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/bundles/inspec-compliance/api/login.rb', line 80 def self.login() () ['url'] = ['server'] + '/api' if ['user'] && ['token'] compliance_store_access_token(, ['token']) elsif ['user'] && ['password'] compliance_login_user_pass() elsif ['refresh_token'] compliance_login_refresh_token() end end |