Files
@ b232a36cc51f
Branch filter:
Location: kallithea/rhodecode/templates/admin/ldap/ldap.html - annotation
b232a36cc51f
4.2 KiB
text/html
Improve LDAP authentication
* Adds an LDAP filter for locating the LDAP object
* Adds a search scope policy when using the Base DN
* Adds option required certificate policy when using LDAPS
* Adds attribute mapping for username, firstname, lastname, email
* Initializes rhodecode user using LDAP info (no longer uses "@ldap")
* Remembers the user object (DN) in the user table
* Updates admin interfaces
* Authenticates against actual user objects in LDAP
* Possibly other things.
Really, this should be extended to a list of LDAP configurations, but this is a good start.
* Adds an LDAP filter for locating the LDAP object
* Adds a search scope policy when using the Base DN
* Adds option required certificate policy when using LDAPS
* Adds attribute mapping for username, firstname, lastname, email
* Initializes rhodecode user using LDAP info (no longer uses "@ldap")
* Remembers the user object (DN) in the user table
* Updates admin interfaces
* Authenticates against actual user objects in LDAP
* Possibly other things.
Really, this should be extended to a list of LDAP configurations, but this is a good start.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 b232a36cc51f 4bdcc08b04c4 b232a36cc51f 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f b232a36cc51f 4bdcc08b04c4 4bdcc08b04c4 6b40654afa1e 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 4bdcc08b04c4 | ## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>
<%def name="title()">
${_('LDAP administration')} - ${c.rhodecode_name}
</%def>
<%def name="breadcrumbs_links()">
${h.link_to(_('Admin'),h.url('admin_home'))}
»
${_('Ldap')}
</%def>
<%def name="page_nav()">
${self.menu('admin')}
</%def>
<%def name="main()">
<div class="box">
<!-- box / title -->
<div class="title">
${self.breadcrumbs()}
</div>
${h.form(url('ldap_settings'))}
<div class="form">
<div class="fields">
<h3>${_('Connection settings')}</h3>
<div class="field">
<div class="label label-checkbox"><label for="ldap_active">${_('Enable LDAP')}</label></div>
<div class="checkboxes"><div class="checkbox">${h.checkbox('ldap_active',True,class_='small')}</div></div>
</div>
<div class="field">
<div class="label"><label for="ldap_host">${_('Host')}</label></div>
<div class="input">${h.text('ldap_host',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_port">${_('Port')}</label></div>
<div class="input">${h.text('ldap_port',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_dn_user">${_('Account')}</label></div>
<div class="input">${h.text('ldap_dn_user',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_dn_pass">${_('Password')}</label></div>
<div class="input">${h.password('ldap_dn_pass',class_='small')}</div>
</div>
<div class="field">
<div class="label label-checkbox"><label for="ldap_ldaps">${_('Enable LDAPS')}</label></div>
<div class="checkboxes"><div class="checkbox">${h.checkbox('ldap_ldaps',True,class_='small')}</div></div>
</div>
<div class="field">
<div class="label"><label for="ldap_tls_reqcert">${_('Certificate Checks')}</label></div>
<div class="select">${h.select('ldap_tls_reqcert',c.tls_reqcert_cur,c.tls_reqcert_choices,class_='small')}</div>
</div>
<h3>${_('Search settings')}</h3>
<div class="field">
<div class="label"><label for="ldap_base_dn">${_('Base DN')}</label></div>
<div class="input">${h.text('ldap_base_dn',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_filter">${_('LDAP Filter')}</label></div>
<div class="input">${h.text('ldap_filter',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_search_scope">${_('LDAP Search Scope')}</label></div>
<div class="select">${h.select('ldap_search_scope',c.search_scope_cur,c.search_scope_choices,class_='small')}</div>
</div>
<h3>${_('Attribute mappings')}</h3>
<div class="field">
<div class="label"><label for="ldap_attr_login">${_('Login Attribute')}</label></div>
<div class="input">${h.text('ldap_attr_login',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_attr_firstname">${_('First Name Attribute')}</label></div>
<div class="input">${h.text('ldap_attr_firstname',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_attr_lastname">${_('Last Name Attribute')}</label></div>
<div class="input">${h.text('ldap_attr_lastname',class_='small')}</div>
</div>
<div class="field">
<div class="label"><label for="ldap_attr_email">${_('E-mail Attribute')}</label></div>
<div class="input">${h.text('ldap_attr_email',class_='small')}</div>
</div>
<div class="buttons">
${h.submit('save','Save',class_="ui-button")}
</div>
</div>
</div>
${h.end_form()}
</div>
</%def>
|