add config für LDAPS
This commit is contained in:
parent
f87d7b9e5d
commit
7baffec406
|
@ -124,4 +124,5 @@ dmypy.json
|
|||
# custom
|
||||
test_pricelist/
|
||||
test_project/
|
||||
config.yml
|
||||
geruecht.config.yml
|
||||
|
|
|
@ -8,6 +8,7 @@ from .logger import getDebugLogger
|
|||
from geruecht.controller import dbConfig, ldapConfig
|
||||
from flask_mysqldb import MySQL
|
||||
from flask_ldapconn import LDAPConn
|
||||
import ssl
|
||||
|
||||
DEBUG = getDebugLogger()
|
||||
DEBUG.info("Initialize App")
|
||||
|
@ -25,9 +26,17 @@ app.config['MYSQL_PASSWORD'] = dbConfig['passwd']
|
|||
app.config['MYSQL_DB'] = dbConfig['database']
|
||||
app.config['MYSQL_CURSORCLASS'] = 'DictCursor'
|
||||
app.config['LDAP_SERVER'] = ldapConfig['URL']
|
||||
app.config['LDAP_PORT'] = ldapConfig['port']
|
||||
app.config['LDAP_BINDDN'] = ldapConfig['dn']
|
||||
app.config['LDAP_PORT'] = ldapConfig['PORT']
|
||||
if ldapConfig['BIND_DN']:
|
||||
app.config['LDAP_BINDDN'] = ldapConfig['BIND_DN']
|
||||
else:
|
||||
app.config['LDAP_BINDDN'] = ldapConfig['DN']
|
||||
if ldapConfig['BIND_SECRET']:
|
||||
app.config['LDAP_SECRET'] = ldapConfig['BIND_SECRET']
|
||||
app.config['LDAP_USE_TLS'] = False
|
||||
app.config['LDAP_USE_SSL'] = ldapConfig['SSL']
|
||||
app.config['LDAP_TLS_VERSION'] = ssl.PROTOCOL_TLSv1_2
|
||||
app.config['LDAP_REQUIRE_CERT'] = ssl.CERT_NONE
|
||||
app.config['FORCE_ATTRIBUTE_VALUE_AS_LIST'] = True
|
||||
|
||||
ldap = LDAPConn(app)
|
||||
|
|
|
@ -6,7 +6,10 @@ Database:
|
|||
database:
|
||||
LDAP:
|
||||
URL:
|
||||
dn:
|
||||
DN:
|
||||
BIND_DN:
|
||||
BIND_SECRET:
|
||||
SSL:
|
||||
USER_DN:
|
||||
ADMIN_DN:
|
||||
ADMIN_SECRET:
|
||||
|
|
|
@ -34,14 +34,14 @@ class ConifgParser():
|
|||
|
||||
if 'LDAP' not in self.config:
|
||||
self.__error__(
|
||||
'Wrong Configuration for LDAP. You should configure ldapconfig with "URL" and "dn"')
|
||||
if 'URL' not in self.config['LDAP'] or 'dn' not in self.config['LDAP']:
|
||||
'Wrong Configuration for LDAP. You should configure ldapconfig with "URL" and "BIND_DN"')
|
||||
if 'URL' not in self.config['LDAP'] or 'DN' not in self.config['LDAP']:
|
||||
self.__error__(
|
||||
'Wrong Configuration for LDAP. You should configure ldapconfig with "URL" and "dn"')
|
||||
if 'port' not in self.config['LDAP']:
|
||||
'Wrong Configuration for LDAP. You should configure ldapconfig with "URL" and "BIND_DN"')
|
||||
if 'PORT' not in self.config['LDAP']:
|
||||
DEBUG.info(
|
||||
'No Config for port in LDAP found. Set it to default: {}'.format(389))
|
||||
self.config['LDAP']['port'] = 389
|
||||
self.config['LDAP']['PORT'] = 389
|
||||
if 'ADMIN_DN' not in self.config['LDAP']:
|
||||
DEBUG.info(
|
||||
'No Config for ADMIN_DN in LDAP found. Set it to default {}. (Maybe Password reset not working)'.format(None)
|
||||
|
@ -57,6 +57,23 @@ class ConifgParser():
|
|||
'No Config for USER_DN in LDAP found. Set it to default {}. (Maybe Password reset not working)'.format(None)
|
||||
)
|
||||
self.config['LDAP']['USER_DN'] = None
|
||||
if 'BIND_DN' not in self.config['LDAP']:
|
||||
DEBUG.info(
|
||||
'No Config for BIND_DN in LDAP found. Set it to default {}. (Maybe Password reset not working)'.format(None)
|
||||
)
|
||||
self.config['LDAP']['BIND_DN'] = None
|
||||
if 'BIND_SECRET' not in self.config['LDAP']:
|
||||
DEBUG.info(
|
||||
'No Config for BIND_SECRET in LDAP found. Set it to default {}. (Maybe Password reset not working)'.format(None)
|
||||
)
|
||||
self.config['LDAP']['BIND_SECRET'] = None
|
||||
if 'SSL' not in self.config['LDAP']:
|
||||
DEBUG.info(
|
||||
'No Config for SSL in LDAP found. Set it to default {}. (Maybe Password reset not working)'.format(False)
|
||||
)
|
||||
self.config['LDAP']['SSL'] = False
|
||||
else:
|
||||
self.config['LDAP']['SSL'] = bool(self.config['LDAP']['SSL'])
|
||||
self.ldap = self.config['LDAP']
|
||||
DEBUG.info("Set LDAPconfig: {}".format(self.ldap))
|
||||
if 'AccessTokenLifeTime' in self.config:
|
||||
|
|
|
@ -17,7 +17,7 @@ class LDAPController(metaclass=Singleton):
|
|||
|
||||
def __init__(self):
|
||||
debug.info("init ldap controller")
|
||||
self.dn = ldapConfig['dn']
|
||||
self.dn = ldapConfig['DN']
|
||||
self.ldap = ldap
|
||||
debug.debug("base dn is {{ {} }}".format(self.dn))
|
||||
debug.debug("ldap is {{ {} }}".format(self.ldap))
|
||||
|
|
Loading…
Reference in New Issue