2
0
Эх сурвалжийг харах

ensure to validate LDAP Configuration

Yuki Takei 8 жил өмнө
parent
commit
f838fba75d

+ 6 - 2
lib/form/admin/securityPassportLdap.js

@@ -6,9 +6,13 @@ var form = require('express-form')
 
 
 module.exports = form(
 module.exports = form(
   field('settingForm[security:passport-ldap:isEnabled]').trim().toBooleanStrict().required(),
   field('settingForm[security:passport-ldap:isEnabled]').trim().toBooleanStrict().required(),
-  field('settingForm[security:passport-ldap:serverUrl]'),
+  field('settingForm[security:passport-ldap:serverUrl]').trim()
+      // https://regex101.com/r/E0UL6D/1
+      .is(/^ldaps?:\/\/([^\/\s]+)\/([^\/\s]+)$/, 'Server URL is invalid. <small><a href="https://regex101.com/r/E0UL6D/1">&gt;&gt; Regex</a></small>'),
   field('settingForm[security:passport-ldap:isUserBind]').trim().toBooleanStrict(),
   field('settingForm[security:passport-ldap:isUserBind]').trim().toBooleanStrict(),
-  field('settingForm[security:passport-ldap:bindDN]'),
+  field('settingForm[security:passport-ldap:bindDN]').trim()
+      // https://regex101.com/r/jK8lpO/1
+      .is(/^(,?[^,=\s]+=[^,=\s]+){1,}$/, 'Bind DN is invalid. <small><a href="https://regex101.com/r/jK8lpO/1">&gt;&gt; Regex</a></small>'),
   field('settingForm[security:passport-ldap:bindDNPassword]'),
   field('settingForm[security:passport-ldap:bindDNPassword]'),
   field('settingForm[security:passport-ldap:searchFilter]')
   field('settingForm[security:passport-ldap:searchFilter]')
 );
 );

+ 1 - 1
lib/views/admin/widget/passport/ldap.html

@@ -96,7 +96,7 @@
       <div class="form-group">
       <div class="form-group">
         <label for="settingForm[security:passport-ldap:searchFilter]" class="col-xs-3 control-label">Search Filter</label>
         <label for="settingForm[security:passport-ldap:searchFilter]" class="col-xs-3 control-label">Search Filter</label>
         <div class="col-xs-6">
         <div class="col-xs-6">
-          <input class="form-control" type="text" placeholder="(uid={% raw %}{{username}}{% endraw %})"
+          <input class="form-control" type="text" placeholder="Default: (uid={% raw %}{{username}}{% endraw %})"
               name="settingForm[security:passport-ldap:searchFilter]" value="{{ settingForm['security:passport-ldap:searchFilter'] || '' }}">
               name="settingForm[security:passport-ldap:searchFilter]" value="{{ settingForm['security:passport-ldap:searchFilter'] || '' }}">
           <p class="help-block">
           <p class="help-block">
             <small>
             <small>