manageiq-appliance_console 5.4.0 → 5.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4d64670c30bb37f4487aefa66bc59a4cf610650416157fe04efbe9400e96ba98
4
- data.tar.gz: 89a871ff8bdbb6b5a44df5e1a733527534f41bd45200138fa939b5bb9091592d
3
+ metadata.gz: cbde93f7bdbda18b731e479d91b349495b2cc47960c066179032c62c6e0dc107
4
+ data.tar.gz: 598f33a8a57bb83d3ec9189ef4cbf41ecb9057b9e1547c961971d7b2aa91b4bb
5
5
  SHA512:
6
- metadata.gz: 381c19281a65a2617e269cac0fbe16bb0e2dc75d6f58a2439550e14f2bb4b56d47cc676491c0ce1f89f15891bed6e57199b66fa14fc3a5b9f2653a8d2c7bd068
7
- data.tar.gz: 4a649d02282f5301b2aa6452455037cc35121d75e7888a5613508b7009578d6c398f9953ea7e210230626b4049d7db347c5bafedcf2dc66976b4207a34bf1778
6
+ metadata.gz: 92f7be3e27e20d6d510ce97581386538353368beefa6b95384e633259ac1be1586c050fe209fa1e32821cbd738ea6c51ddbd90bf46a91637887b9ab7cb69cd57
7
+ data.tar.gz: 7eae83f6bb97a3a565674cb3b07e0d1a55694ed2e035691905f764ca417d836da08a1650cf059fe37ebab2942f89616a522a47748239b4abe7c3fcccd1853e2b
@@ -169,6 +169,7 @@ module ApplianceConsole
169
169
  opt :oidc_client_host, "Optional Appliance host used for OpenID-Connect Authentication", :type => :string
170
170
  opt :oidc_client_id, "The OpenID-Connect Provider Client ID", :type => :string
171
171
  opt :oidc_client_secret, "The OpenID-Connect Provider Client Secret", :type => :string
172
+ opt :oidc_introspection_endpoint, "The OpenID-Connect Provider Introspect Endpoint", :type => :string
172
173
  opt :oidc_enable_sso, "Optionally enable SSO with OpenID-Connect Authentication", :type => :boolean, :default => false
173
174
  opt :oidc_unconfig, "Unconfigure Appliance OpenID-Connect Authentication", :type => :boolean, :default => false
174
175
  opt :server, "{start|stop|restart} actions on evmserverd Server", :type => :string
@@ -5,6 +5,10 @@ module ManageIQ
5
5
 
6
6
  attr_accessor :host, :options
7
7
 
8
+ URL_SUFFIX = /\/\.well-known\/openid-configuration$/.freeze
9
+ INTROSPECT_SUFFIX = "/protocol/openid-connect/token/introspect".freeze
10
+ INTROSPECT_ENDPOINT_ERROR = "Unable to derive the OpenID-Connect Client Introspection Endpoint. Use --oidc-introspection-endpoint".freeze
11
+
8
12
  def initialize(options)
9
13
  @options = options
10
14
  end
@@ -12,6 +16,7 @@ module ManageIQ
12
16
  def configure(host)
13
17
  @host = host
14
18
  validate_oidc_options
19
+ derive_introspection_endpoint
15
20
 
16
21
  say("Configuring OpenID-Connect Authentication for https://#{host} ...")
17
22
  copy_apache_oidc_configfiles
@@ -52,10 +57,11 @@ module ManageIQ
52
57
  debug_msg("Copying Apache OpenID-Connect Config files ...")
53
58
  copy_template(HTTPD_CONFIG_DIRECTORY, "manageiq-remote-user-openidc.conf")
54
59
  copy_template(HTTPD_CONFIG_DIRECTORY, "manageiq-external-auth-openidc.conf.erb",
55
- :miq_appliance => host,
56
- :oidc_provider_metadata_url => options[:oidc_url],
57
- :oidc_client_id => options[:oidc_client_id],
58
- :oidc_client_secret => options[:oidc_client_secret])
60
+ :miq_appliance => host,
61
+ :oidc_provider_metadata_url => options[:oidc_url],
62
+ :oidc_client_id => options[:oidc_client_id],
63
+ :oidc_client_secret => options[:oidc_client_secret],
64
+ :oidc_introspection_endpoint => options[:oidc_introspection_endpoint])
59
65
  end
60
66
 
61
67
  def remove_apache_oidc_configfiles
@@ -76,6 +82,13 @@ module ManageIQ
76
82
  raise "Must specify the OpenID-Connect Client Secret via --oidc-client-secret" if options[:oidc_client_secret].blank?
77
83
  end
78
84
 
85
+ def derive_introspection_endpoint
86
+ return if options[:oidc_introspection_endpoint].present?
87
+
88
+ options[:oidc_introspection_endpoint] = options[:oidc_url].sub(URL_SUFFIX, INTROSPECT_SUFFIX) if options[:oidc_url].match(URL_SUFFIX)
89
+ raise INTROSPECT_ENDPOINT_ERROR if options[:oidc_introspection_endpoint].blank?
90
+ end
91
+
79
92
  # Appliance Settings
80
93
 
81
94
  def configure_auth_settings_oidc
@@ -1,5 +1,5 @@
1
1
  module ManageIQ
2
2
  module ApplianceConsole
3
- VERSION = '5.4.0'.freeze
3
+ VERSION = '5.5.0'.freeze
4
4
  end
5
5
  end
@@ -28,7 +28,7 @@ en:
28
28
  app_config: Configure Application
29
29
  db_replication: Configure Database Replication
30
30
  log_config: Logfile Configuration
31
- failover_monitor: Configure Application Database Failover Monitor
31
+ failover_monitor: Control Application Database Failover Monitor
32
32
  httpdauth: Configure External Authentication (httpd)
33
33
  extauth_opts: Update External Authentication Options
34
34
  evmstop: Stop EVM Server Processes
@@ -17,7 +17,7 @@ en:
17
17
  dbrestore: Restore Database From Backup
18
18
  app_config: Configure Application
19
19
  db_replication: Configure Database Replication
20
- failover_monitor: Configure Application Database Failover Monitor
20
+ failover_monitor: Control Application Database Failover Monitor
21
21
  evmstop: Stop EVM Server Processes
22
22
  key_gen: Generate Custom Encryption Key
23
23
  evmstart: Start EVM Server Processes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manageiq-appliance_console
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.4.0
4
+ version: 5.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ManageIQ Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-14 00:00:00.000000000 Z
11
+ date: 2020-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord