Various fixes to ldap view

also, keep it enabled for all for now
This commit is contained in:
Girish Ramakrishnan
2019-10-25 15:19:36 -07:00
parent 0a8fa40b6b
commit e412aa9a3d
2 changed files with 17 additions and 23 deletions

View File

@@ -279,18 +279,16 @@
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Configure external LDAP</h4>
<h4 class="modal-title">Configure LDAP</h4>
</div>
<div class="modal-body">
<div class="checkbox">
<label>
<input type="checkbox" ng-model="externalLdap.enabled">Enable</input>
<input type="checkbox" ng-model="externalLdap.enabled">Enable LDAP</input>
</label>
</div>
<br/>
<div uib-collapse="!externalLdap.enabled">
<div>
<form name="externalLdapConfigForm" role="form" novalidate ng-submit="externalLdap.submit()" autocomplete="off">
<fieldset>
<p class="has-error text-center" ng-show="externalLdap.error.generic">{{ externalLdap.error.generic }}</p>
@@ -299,28 +297,28 @@
<input type="password" style="display: none;">
<div class="form-group" ng-class="{ 'has-error': externalLdap.error.url }">
<label class="control-label" for="inputExternalLdapConfigUrl">Endpoint Url</label>
<input type="text" class="form-control" ng-model="externalLdap.url" id="inputExternalLdapConfigUrl" name="url" ng-disabled="externalLdap.busy" placeholder="ldaps://example.com:636" required>
<label class="control-label" for="inputExternalLdapConfigUrl">Server Url</label>
<input type="text" class="form-control" ng-disabled="!externalLdap.enabled" ng-model="externalLdap.url" id="inputExternalLdapConfigUrl" name="url" ng-disabled="externalLdap.busy" placeholder="ldaps://example.com:636" required>
</div>
<div class="form-group" ng-class="{ 'has-error': externalLdap.error.baseDn }">
<label class="control-label" for="inputExternalLdapConfigBaseDn">Base DN</label>
<input type="text" class="form-control" ng-model="externalLdap.baseDn" id="inputExternalLdapConfigBaseDn" name="baseDn" ng-disabled="externalLdap.busy" placeholder="ou=Users,dc=example,dc=com" required>
<input type="text" class="form-control" ng-disabled="!externalLdap.enabled" ng-model="externalLdap.baseDn" id="inputExternalLdapConfigBaseDn" name="baseDn" ng-disabled="externalLdap.busy" placeholder="ou=users,dc=example,dc=com" required>
</div>
<div class="form-group" ng-class="{ 'has-error': externalLdap.error.filter }">
<label class="control-label" for="inputExternalLdapConfigFilter">Filter</label>
<input type="text" class="form-control" ng-model="externalLdap.filter" id="inputExternalLdapConfigFilter" name="filter" ng-disabled="externalLdap.busy" placeholder="(objectClass=inetOrgPerson)" required>
<input type="text" class="form-control" ng-disabled="!externalLdap.enabled" ng-model="externalLdap.filter" id="inputExternalLdapConfigFilter" name="filter" ng-disabled="externalLdap.busy" placeholder="(objectClass=inetOrgPerson)" required>
</div>
<div class="form-group" ng-class="{ 'has-error': externalLdap.error.credentials }">
<label class="control-label" for="inputExternalLdapConfigBindDn">Bind DN (optional)</label>
<input type="text" class="form-control" ng-model="externalLdap.bindDn" id="inputExternalLdapConfigBindDn" name="bindDn" ng-disabled="externalLdap.busy" placeholder="uid=admin,ou=Users,dc=example,dc=com">
<input type="text" class="form-control" ng-disabled="!externalLdap.enabled" ng-model="externalLdap.bindDn" id="inputExternalLdapConfigBindDn" name="bindDn" ng-disabled="externalLdap.busy" placeholder="uid=admin,ou=Users,dc=example,dc=com">
</div>
<div class="form-group" ng-class="{ 'has-error': externalLdap.error.credentials }">
<label class="control-label" for="inputExternalLdapConfigBindPassword">Bind Password (optional)</label>
<input type="password" class="form-control" ng-model="externalLdap.bindPassword" id="inputExternalLdapConfigBindPassword" name="bindPassword" ng-disabled="externalLdap.busy" placeholder="">
<input type="password" class="form-control" ng-disabled="!externalLdap.enabled" ng-model="externalLdap.bindPassword" id="inputExternalLdapConfigBindPassword" name="bindPassword" ng-disabled="externalLdap.busy" placeholder="">
</div>
<input class="ng-hide" type="submit" ng-disabled="externalLdapConfigForm.$invalid"/>
@@ -462,25 +460,22 @@
</div>
<div class="text-left" style="margin-top: 50px;" ng-show="showExternalLdap">
<h3>External LDAP</h3>
<h1>LDAP
<sup><a ng-href="{{ config.webServerOrigin }}/documentation/user-management/#external-ldap" class="help" target="_blank"><i class="fa fa-question-circle"></i></a></sup>
</h1>
</div>
<div class="card card-large" ng-show="showExternalLdap">
<div class="row">
<div class="col-md-12">
<p>
This option allows to use an external LDAP or ActiveDirectory service for user management.<br/>
<br/>
Users from the LDAP directory will be synced into the Cloudron user management.
Those users will be able to login to apps using the passwored stored in the LDAP service and thus won't be able to change their password inside Cloudron.
The same applies for their email address.
</p>
<p>Cloudron will authenticate users against the configured LDAP server.</p>
<p>LDAP authentication is currently <b>{{ externalLdap.enabled ? 'enabled' : 'disabled' }}.</p>
<br/>
<button class="btn btn-success" ng-show="externalLdap.enabled" ng-click="externalLdap.sync()"><i class="fa fa-circle-notch fa-spin" ng-show="externalLdap.syncBusy"></i> Synchronize</button>
<a class="btn btn-primary" ng-show="externalLdap.taskId" ng-href="/logs.html?taskId={{ externalLdap.taskId }}" target="_blank">Show Logs</a>
<button class="btn btn-primary pull-right" ng-click="externalLdap.show()">Configure</button>
<button class="btn btn-success pull-right" ng-disabled="!externalLdap.enabled" ng-click="externalLdap.sync()"><i class="fa fa-circle-notch fa-spin" ng-show="externalLdap.syncBusy"></i> Synchronize</button>
<a class="btn btn-primary pull-right" ng-show="externalLdap.taskId" ng-href="/logs.html?taskId={{ externalLdap.taskId }}" target="_blank">Show Logs</a>
</div>
</div>