add support for enabling oauth in keystone openidc integration

Expose parameters for enabling OAuth support in mod_auth_openidc

Change-Id: If19a2f12896d96e20483f5b25676bc70181a556d
Depends-on: I284160e520fbb73a041c49ff1a3e1ef5f3caf59d
This commit is contained in:
Lars Kellogg-Stedman
2019-03-20 16:12:07 -04:00
committed by Raildo Mascena
parent fd4a51c18b
commit 5c0e4e7355
3 changed files with 27 additions and 0 deletions

View File

@@ -340,6 +340,16 @@ parameters:
description: >-
Attribute to be used to obtain the entity ID of the Identity Provider
from the environment.
KeystoneOpenIdcEnableOAuth:
type: boolean
default: false
description: >-
Enable OAuth 2.0 integration.
KeystoneOpenIdcIntrospectionEndpoint:
type: string
default: ''
description: >-
OAuth 2.0 introspection endpoint for mod_auth_openidc
resources:
@@ -553,6 +563,10 @@ outputs:
get_param: KeystoneOpenIdcResponseType
keystone::federation::openidc::remote_id_attribute:
get_param: KeystoneOpenIdcRemoteIdAttribute
keystone::federation::openidc::openidc_oauth_enabled:
get_param: KeystoneOpenIdcEnableOAuth
keystone::federation::openidc::openidc_introspection_endpoint:
get_param: KeystoneOpenIdcIntrospectionEndpoint
- {}
-
if:

View File

@@ -30,6 +30,10 @@ parameter_defaults:
# Type: string
KeystoneOpenIdcIdpName: myidp
# OAuth 2.0 introspection endpoint for mod_auth_openidc
# Type: string
KeystoneOpenIdcIntrospectionEndpoint: https://myidp.example.test/auth/realms/openstack/protocol/openid-connect/token/introspect
# The url that points to your OpenID Connect provider metadata
# Type: string
KeystoneOpenIdcProviderMetadataUrl: https://myidp.example.test/auth/realms/openstack/.well-known/openid-configuration
@@ -70,6 +74,10 @@ parameter_defaults:
# Type: boolean
KeystoneOpenIdcEnable: True
# Enable OAuth 2.0 integration.
# Type: boolean
KeystoneOpenIdcEnableOAuth: True
# Enable support for Web Single Sign-On
# Type: boolean
WebSSOEnable: True

View File

@@ -16,6 +16,8 @@ environments:
- KeystoneOpenIdcCryptoPassphrase
- KeystoneOpenIdcResponseType
- KeystoneOpenIdcRemoteIdAttribute
- KeystoneOpenIdcEnableOAuth
- KeystoneOpenIdcIntrospectionEndpoint
deployment/horizon/horizon-container-puppet.yaml:
parameters:
- WebSSOEnable
@@ -25,16 +27,19 @@ environments:
sample_values:
KeystoneFederationEnable: True
KeystoneOpenIdcEnable: True
KeystoneOpenIdcEnableOAuth: True
WebSSOEnable: True
KeystoneAuthMethods: 'password,token,openid'
KeystoneTrustedDashboards: 'https://dashboard.example.test/dashboard/auth/websso/'
KeystoneOpenIdcIdpName: 'myidp'
KeystoneOpenIdcProviderMetadataUrl: 'https://myidp.example.test/auth/realms/openstack/.well-known/openid-configuration'
KeystoneOpenIdcIntrospectionEndpoint: 'https://myidp.example.test/auth/realms/openstack/protocol/openid-connect/token/introspect'
KeystoneOpenIdcClientId: 'myclientid'
KeystoneOpenIdcClientSecret: 'myclientsecret'
static:
- KeystoneFederationEnable
- KeystoneOpenIdcEnable
- KeystoneOpenIdcEnableOAuth
- WebSSOEnable
description: |
This is an example template on how to configure keystone federation for