Ver Fonte

add comments

utsushiiro há 7 anos atrás
pai
commit
69d835cc58

+ 1 - 1
src/server/routes/admin.js

@@ -1100,7 +1100,7 @@ module.exports = function(crowi, app) {
   actions.api.securityPassportSamlSetting = async(req, res) => {
   actions.api.securityPassportSamlSetting = async(req, res) => {
     const form = req.form.settingForm;
     const form = req.form.settingForm;
 
 
-    crowi.passportService.validateSAMLSettingForm(req.form);
+    crowi.passportService.validateSamlSettingForm(req.form);
 
 
     if (!req.form.isValid) {
     if (!req.form.isValid) {
       return res.json({status: false, message: req.form.errors.join('\n')});
       return res.json({status: false, message: req.form.errors.join('\n')});

+ 14 - 5
src/server/service/passport.js

@@ -54,7 +54,10 @@ class PassportService {
      */
      */
     this.isSerializerSetup = false;
     this.isSerializerSetup = false;
 
 
-    this.requiredSAMLConfigKeys = [
+    /**
+     * the keys of mandatory configs for SAML
+     */
+    this.mandatoryConfigKeysForSaml = [
       'security:passport-saml:isEnabled',
       'security:passport-saml:isEnabled',
       'security:passport-saml:entryPoint',
       'security:passport-saml:entryPoint',
       'security:passport-saml:issuer',
       'security:passport-saml:issuer',
@@ -476,9 +479,12 @@ class PassportService {
     this.isSamlStrategySetup = false;
     this.isSamlStrategySetup = false;
   }
   }
 
 
-  getSAMLMissingRequiredConfigs() {
+  /**
+   * return the keys of the configs mandatory for SAML whose value are empty.
+   */
+  getSamlMissingMandatoryConfigKeys() {
     const missingRequireds = [];
     const missingRequireds = [];
-    for (const key of this.requiredSAMLConfigKeys) {
+    for (const key of this.mandatoryConfigKeysForSaml) {
       if (this.crowi.configManager.getConfig('crowi', key) === null) {
       if (this.crowi.configManager.getConfig('crowi', key) === null) {
         missingRequireds.push(key);
         missingRequireds.push(key);
       }
       }
@@ -486,8 +492,11 @@ class PassportService {
     return missingRequireds;
     return missingRequireds;
   }
   }
 
 
-  validateSAMLSettingForm(form) {
-    for (const key of this.requiredSAMLConfigKeys) {
+  /**
+   * validate setting form values for SAML
+   */
+  validateSamlSettingForm(form) {
+    for (const key of this.mandatoryConfigKeysForSaml) {
       const formValue = form.settingForm[key];
       const formValue = form.settingForm[key];
       if (this.crowi.configManager.getConfigFromEnvVars('crowi', key) === null && formValue === '') {
       if (this.crowi.configManager.getConfigFromEnvVars('crowi', key) === null && formValue === '') {
         form.errors.push(`${key} is required`);
         form.errors.push(`${key} is required`);

+ 2 - 2
src/server/util/swigFunctions.js

@@ -114,8 +114,8 @@ module.exports = function(crowi, app, req, locals) {
     return locals.isEnabledPassport() && config.crowi['security:passport-saml:isEnabled'];
     return locals.isEnabledPassport() && config.crowi['security:passport-saml:isEnabled'];
   };
   };
 
 
-  locals.getSAMLMissingRequireds = function() {
-    return crowi.passportService.getSAMLMissingRequiredConfigs();
+  locals.getSamlMissingMandatoryConfigKeys = function() {
+    return crowi.passportService.getSamlMissingMandatoryConfigKeys();
   };
   };
 
 
   locals.googleLoginEnabled = function() {
   locals.googleLoginEnabled = function() {

+ 4 - 4
src/server/views/admin/widget/passport/saml.html

@@ -52,13 +52,13 @@
 
 
   <fieldset id="passport-saml-hide-when-disabled" {%if !isSamlEnabled %}style="display: none;"{% endif %}>
   <fieldset id="passport-saml-hide-when-disabled" {%if !isSamlEnabled %}style="display: none;"{% endif %}>
 
 
-    {% set missingRequiredConfigs = getSAMLMissingRequireds() %}
-    {% if isSamlEnabled && missingRequiredConfigs.length !== 0 %}
+    {% set missingMandatoryConfigKeys = getSamlMissingMandatoryConfigKeys() %}
+    {% if isSamlEnabled && missingMandatoryConfigKeys.length !== 0 %}
     <div class="alert alert-danger">
     <div class="alert alert-danger">
       Currently, the following mandatory items are not set in either database nor environment variables.
       Currently, the following mandatory items are not set in either database nor environment variables.
       <ul>
       <ul>
-        {% for missingRequiredConfig in missingRequiredConfigs %}
-        <li>{{ missingRequiredConfig }}</li>
+        {% for missingMandatoryConfigKey in missingMandatoryConfigKeys %}
+        <li>{{ missingMandatoryConfigKey }}</li>
         {% endfor %}
         {% endfor %}
       </ul>
       </ul>
     </div>
     </div>