Browse Source

Deprecate pki related options

check_revocations_for_cached and hash_algorithms are deprecated for
removel because of PKI token format is no longer supported.
Update warning message and add a release note.

Change-Id: I4f2437e426785368c7de20b092dc9ee5ab6b9345
Closes-Bug: #1804562
Closes-Bug: #1804720
tags/14.2.0
ZhongShengping 1 year ago
parent
commit
ace6dbba01
3 changed files with 33 additions and 27 deletions
  1. +27
    -21
      manifests/keystone/authtoken.pp
  2. +6
    -0
      releasenotes/notes/deprecate_pki_related_parameters-bad17553aa076f9d.yaml
  3. +0
    -6
      spec/classes/sahara_keystone_authtoken_spec.rb

+ 27
- 21
manifests/keystone/authtoken.pp View File

@@ -63,12 +63,6 @@
# (Optional) Required if identity server requires client certificate
# Defaults to $::os_service_default.
#
# [*check_revocations_for_cached*]
# (Optional) If true, the revocation list will be checked for cached tokens.
# This requires that PKI tokens are configured on the identity server.
# boolean value.
# Defaults to $::os_service_default.
#
# [*delay_auth_decision*]
# (Optional) Do not handle authorization requests within the middleware, but
# delegate the authorization decision to downstream WSGI components. Boolean
@@ -85,17 +79,6 @@
# must be present in tokens. String value.
# Defaults to $::os_service_default.
#
# [*hash_algorithms*]
# (Optional) Hash algorithms to use for hashing PKI tokens. This may be a
# single algorithm or multiple. The algorithms are those supported by Python
# standard hashlib.new(). The hashes will be tried in the order given, so put
# the preferred one first for performance. The result of the first hash will
# be stored in the cache. This will typically be set to multiple values only
# while migrating from a less secure algorithm to a more secure one. Once all
# the old tokens are expired this option should be set to a single value for
# better performance. List value.
# Defaults to $::os_service_default.
#
# [*http_connect_timeout*]
# (Optional) Request timeout value for communicating with Identity API
# server.
@@ -184,6 +167,23 @@
# (Optional) Complete public Identity API endpoint.
# Defaults to undef
#
# [*check_revocations_for_cached*]
# (Optional) If true, the revocation list will be checked for cached tokens.
# This requires that PKI tokens are configured on the identity server.
# boolean value.
# Defaults to undef.
#
# [*hash_algorithms*]
# (Optional) Hash algorithms to use for hashing PKI tokens. This may be a
# single algorithm or multiple. The algorithms are those supported by Python
# standard hashlib.new(). The hashes will be tried in the order given, so put
# the preferred one first for performance. The result of the first hash will
# be stored in the cache. This will typically be set to multiple values only
# while migrating from a less secure algorithm to a more secure one. Once all
# the old tokens are expired this option should be set to a single value for
# better performance. List value.
# Defaults to undef.
#
class sahara::keystone::authtoken(
$username = 'sahara',
$password = $::os_service_default,
@@ -199,10 +199,8 @@ class sahara::keystone::authtoken(
$cache = $::os_service_default,
$cafile = $::os_service_default,
$certfile = $::os_service_default,
$check_revocations_for_cached = $::os_service_default,
$delay_auth_decision = $::os_service_default,
$enforce_token_bind = $::os_service_default,
$hash_algorithms = $::os_service_default,
$http_connect_timeout = $::os_service_default,
$http_request_max_retries = $::os_service_default,
$include_service_catalog = $::os_service_default,
@@ -221,6 +219,8 @@ class sahara::keystone::authtoken(
$token_cache_time = $::os_service_default,
# DEPRECATED PARAMETERS
$auth_uri = undef,
$check_revocations_for_cached = undef,
$hash_algorithms = undef,
) {

include ::sahara::deps
@@ -229,6 +229,14 @@ class sahara::keystone::authtoken(
warning('The auth_uri parameter is deprecated. Please use www_authenticate_uri instead.')
}

if $check_revocations_for_cached {
warning('check_revocations_for_cached parameter is deprecated, has no effect and will be removed in the future.')
}

if $hash_algorithms {
warning('hash_algorithms parameter is deprecated, has no effect and will be removed in the future.')
}

#NOTE(emilien): Use pick to keep backward compatibility
$username_real = pick($::sahara::admin_user,$username)
$password_real = pick($::sahara::admin_password,$password)
@@ -252,10 +260,8 @@ class sahara::keystone::authtoken(
cache => $cache,
cafile => $cafile,
certfile => $certfile,
check_revocations_for_cached => $check_revocations_for_cached,
delay_auth_decision => $delay_auth_decision,
enforce_token_bind => $enforce_token_bind,
hash_algorithms => $hash_algorithms,
http_connect_timeout => $http_connect_timeout,
http_request_max_retries => $http_request_max_retries,
include_service_catalog => $include_service_catalog,


+ 6
- 0
releasenotes/notes/deprecate_pki_related_parameters-bad17553aa076f9d.yaml View File

@@ -0,0 +1,6 @@
---
deprecations:
- check_revocations_for_cached option is now deprecated for removal, the
parameter has no effect.
- hash_algorithms option is now deprecated for removal, the parameter
has no effect.

+ 0
- 6
spec/classes/sahara_keystone_authtoken_spec.rb View File

@@ -25,10 +25,8 @@ describe 'sahara::keystone::authtoken' do
is_expected.to contain_sahara_config('keystone_authtoken/cache').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/cafile').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/certfile').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/check_revocations_for_cached').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/delay_auth_decision').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/enforce_token_bind').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/hash_algorithms').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/http_connect_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/http_request_max_retries').with_value('<SERVICE DEFAULT>')
is_expected.to contain_sahara_config('keystone_authtoken/include_service_catalog').with_value('<SERVICE DEFAULT>')
@@ -65,10 +63,8 @@ describe 'sahara::keystone::authtoken' do
:cafile =>
'/opt/stack/data/cafile.pem',
:certfile => 'certfile.crt',
:check_revocations_for_cached => false,
:delay_auth_decision => false,
:enforce_token_bind => 'permissive',
:hash_algorithms => 'md5',
:http_connect_timeout => '300',
:http_request_max_retries => '3',
:include_service_catalog => true,
@@ -104,10 +100,8 @@ describe 'sahara::keystone::authtoken' do
is_expected.to contain_sahara_config('keystone_authtoken/cache').with_value(params[:cache])
is_expected.to contain_sahara_config('keystone_authtoken/cafile').with_value(params[:cafile])
is_expected.to contain_sahara_config('keystone_authtoken/certfile').with_value(params[:certfile])
is_expected.to contain_sahara_config('keystone_authtoken/check_revocations_for_cached').with_value(params[:check_revocations_for_cached])
is_expected.to contain_sahara_config('keystone_authtoken/delay_auth_decision').with_value(params[:delay_auth_decision])
is_expected.to contain_sahara_config('keystone_authtoken/enforce_token_bind').with_value(params[:enforce_token_bind])
is_expected.to contain_sahara_config('keystone_authtoken/hash_algorithms').with_value(params[:hash_algorithms])
is_expected.to contain_sahara_config('keystone_authtoken/http_connect_timeout').with_value(params[:http_connect_timeout])
is_expected.to contain_sahara_config('keystone_authtoken/http_request_max_retries').with_value(params[:http_request_max_retries])
is_expected.to contain_sahara_config('keystone_authtoken/include_service_catalog').with_value(params[:include_service_catalog])


Loading…
Cancel
Save