securityPassportLdap.js 906 B

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