comparison rhodecode/controllers/admin/ldap_settings.py @ 1290:74685a31cc43 beta

Enable start_tls connection encryption.
author "Lorenzo M. Catucci" <lorenzo@sancho.ccd.uniroma2.it>
date Tue, 26 Apr 2011 19:17:06 +0200
parents 5f2fbab7c429
children c0335c1dee36
comparison
equal deleted inserted replaced
1289:f56533aa1caa 1290:74685a31cc43
57 ('DEMAND', _('DEMAND'),), 57 ('DEMAND', _('DEMAND'),),
58 ('HARD', _('HARD'),), 58 ('HARD', _('HARD'),),
59 ] 59 ]
60 tls_reqcert_default = 'DEMAND' 60 tls_reqcert_default = 'DEMAND'
61 61
62 tls_kind_choices = [('PLAIN', _('No encryption'),),
63 ('LDAPS', _('LDAPS connection'),),
64 ('START_TLS', _('START_TLS on LDAP connection'),)
65 ]
66
67 tls_kind_default = 'PLAIN'
68
62 @LoginRequired() 69 @LoginRequired()
63 @HasPermissionAllDecorator('hg.admin') 70 @HasPermissionAllDecorator('hg.admin')
64 def __before__(self): 71 def __before__(self):
65 c.admin_user = session.get('admin_user') 72 c.admin_user = session.get('admin_user')
66 c.admin_username = session.get('admin_username') 73 c.admin_username = session.get('admin_username')
67 c.search_scope_choices = self.search_scope_choices 74 c.search_scope_choices = self.search_scope_choices
68 c.tls_reqcert_choices = self.tls_reqcert_choices 75 c.tls_reqcert_choices = self.tls_reqcert_choices
76 c.tls_kind_choices = self.tls_kind_choices
69 super(LdapSettingsController, self).__before__() 77 super(LdapSettingsController, self).__before__()
70 78
71 def index(self): 79 def index(self):
72 defaults = SettingsModel().get_ldap_settings() 80 defaults = SettingsModel().get_ldap_settings()
73 c.search_scope_cur = defaults.get('ldap_search_scope') 81 c.search_scope_cur = defaults.get('ldap_search_scope')
74 c.tls_reqcert_cur = defaults.get('ldap_tls_reqcert') 82 c.tls_reqcert_cur = defaults.get('ldap_tls_reqcert')
83 c.tls_kind_cur = defaults.get('ldap_tls_kind')
75 84
76 return htmlfill.render( 85 return htmlfill.render(
77 render('admin/ldap/ldap.html'), 86 render('admin/ldap/ldap.html'),
78 defaults=defaults, 87 defaults=defaults,
79 encoding="UTF-8", 88 encoding="UTF-8",
82 def ldap_settings(self): 91 def ldap_settings(self):
83 """POST ldap create and store ldap settings""" 92 """POST ldap create and store ldap settings"""
84 93
85 settings_model = SettingsModel() 94 settings_model = SettingsModel()
86 _form = LdapSettingsForm([x[0] for x in self.tls_reqcert_choices], 95 _form = LdapSettingsForm([x[0] for x in self.tls_reqcert_choices],
87 [x[0] for x in self.search_scope_choices])() 96 [x[0] for x in self.search_scope_choices],
97 [x[0] for x in self.tls_kind_choices])()
88 98
89 try: 99 try:
90 form_result = _form.to_python(dict(request.POST)) 100 form_result = _form.to_python(dict(request.POST))
91 try: 101 try:
92 102