Skip to content

Commit d8b9999

Browse files
committed
be able to enable lowercase URL encoding (Compatibility issue with ADFS when validating Signatures
1 parent 20984fa commit d8b9999

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

onelogin-saml-sso/php/configuration.php

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,9 @@ function onelogin_saml_configuration() {
145145
register_setting($option_group, 'onelogin_saml_advanced_settings_sp_entity_id');
146146
add_settings_field('onelogin_saml_advanced_settings_sp_entity_id', __('Service Provider Entity Id', 'onelogin-saml-sso'), "plugin_setting_string_onelogin_saml_advanced_settings_sp_entity_id", $option_group, 'advanced_settings');
147147

148+
register_setting($option_group, 'onelogin_saml_advanced_idp_lowercase_url_encoding');
149+
add_settings_field('onelogin_saml_advanced_idp_lowercase_url_encoding', __('Lowercase URL encoding?', 'onelogin-saml-sso'), "plugin_setting_string_saml_advanced_idp_lowercase_url_encoding", $option_group, 'advanced_settings');
150+
148151
$mapping_fields = array (
149152
'onelogin_saml_advanced_settings_nameid_encrypted' => __('Encrypt nameID', 'onelogin-saml-sso'),
150153
'onelogin_saml_advanced_settings_authn_request_signed' => __('Sign AuthnRequest', 'onelogin-saml-sso'),
@@ -197,7 +200,14 @@ function plugin_setting_string_onelogin_saml_idp_x509cert() {
197200
echo '</textarea>';
198201
echo '<p class="description">'.__('Public x509 certificate of the IdP. ("X.509 certificate")', 'onelogin-saml-sso');
199202
}
200-
203+
204+
function plugin_setting_string_saml_advanced_idp_lowercase_url_encoding() {
205+
$value = get_option('onelogin_saml_advanced_idp_lowercase_url_encoding');
206+
echo '<input type="checkbox" name="" id="onelogin_saml_advanced_idp_lowercase_url_encoding"
207+
'.($value ? 'checked="checked"': '').'>'.
208+
'<p class="description">'.__('Some IdPs like ADFS can use lowercase URL encoding, but the plugin expects uppercase URL enconding, enable it to fix incompatibility issues.', 'onelogin-saml-sso').'</p>';
209+
}
210+
201211
function plugin_setting_boolean_onelogin_saml_autocreate() {
202212
$value = get_option('onelogin_saml_autocreate');
203213
echo '<input type="checkbox" name="onelogin_saml_autocreate" id="onelogin_saml_autocreate"
@@ -283,7 +293,7 @@ function plugin_setting_string_onelogin_saml_role_mapping($role_value) {
283293

284294
function plugin_setting_string_onelogin_saml_role_order($role_value) {
285295
echo '<input type="text" name="onelogin_saml_role_order_'.$role_value.'" id="onelogin_saml_role_order_'.$role_value.'"
286-
value= "'.get_option('onelogin_saml_role_order_'.$role_value).'" size="5">';
296+
value= "'.get_option('onelogin_saml_role_order_'.$role_value).'" size="3">';
287297
}
288298

289299
function plugin_setting_boolean_onelogin_saml_role_mapping_multivalued_in_one_attribute_value() {

onelogin-saml-sso/php/settings.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@
8686
'url' => get_option('onelogin_saml_idp_slo'),
8787
),
8888
'x509cert' => get_option('onelogin_saml_idp_x509cert'),
89+
'lowercaseUrlencoding' => get_option('onelogin_saml_advanced_idp_lowercase_url_encoding', false),
8990
),
9091

9192
'security' => array (

0 commit comments

Comments
 (0)