Example #1
0
def ldap_connect():
    import ldap
    from frappe_ldap.templates.pages.ldap_login import get_details
    from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection

    server_details = get_details()

    connect, user_dn, base_dn = set_ldap_connection(server_details)
    filters = "uid=*"

    new_created = []
    enabled_profiles = []

    try:
        #if authentication successful, get the full user data
        connect.simple_bind_s(user_dn, server_details.get('pwd'))
    except:
        connect.unbind_s()

    #search for profiels
    result = connect.search_s(base_dn, 2, filters)

    for dn, r in result:
        if r.get('mail'):
            password = random_string(10)
            role = r.get('description') if r.get('description') else 'Default'
            check_profile(
                r.get('mail')[0],
                r.get('uid')[0], password, role, new_created)
            enabled_profiles.append(r.get('mail')[0])

    disable_profiles(enabled_profiles)
    admin_notification(new_created)
Example #2
0
def ldap_connect():
	import ldap
	from frappe_ldap.templates.pages.ldap_login import get_details
	from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection

	server_details = get_details()

	connect, user_dn, base_dn = set_ldap_connection(server_details)
	filters =  server_details.get('ldap_uidmapping')+"=*"
#	filters =  "uid=*"

	new_created = []
	enabled_profiles = []

	try:
		#if authentication successful, get the full user data
		connect.simple_bind_s(user_dn, server_details.get('pwd'))
	except :
		connect.unbind_s()

	#search for users
	result = connect.search_s(base_dn, 2,filters)

	for dn, r in result:
		if r.get('mail'):
			password = random_string(10)
			role = r.get('description') if r.get('description') else 'Default'
			check_profile(r.get('mail')[0], r.get('uid')[0], password, role, new_created)
			enabled_profiles.append(r.get('mail')[0])

	disable_profiles(enabled_profiles)
	admin_notification(new_created)
Example #3
0
def ldap_auth(user, pwd, server_details):
    from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection
    import ldap

    status = True
    mail = None
    user_id = None
    dn = None

    connect, user_dn, base_dn = set_ldap_connection(server_details)
    filters = "uid=*" + user + "*"

    try:
        connect.simple_bind_s(user_dn, server_details.get('pwd'))
        result = connect.search_s(base_dn, ldap.SCOPE_SUBTREE, filters)
        for dn, r in result:
            dn = str(dn)
            mail = str(r['mail'][0])
            user_id = str(r['uid'][0])
            role = str(r['description'][0])

        if dn:
            connect.simple_bind_s(dn, pwd)
            status = True
        else:
            self.fail("Not a valid LDAP user")

    except ldap.LDAPError, e:
        connect.unbind_s()
        status = False
Example #4
0
def ldap_auth(user, pwd, server_details):
	from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection 
	import ldap

	status = True	
	mail = None
	user_id = None	
	dn = None

	connect, user_dn, base_dn = set_ldap_connection(server_details)
	filters = "uid=*"+user+"*"
	
	try:
		connect.simple_bind_s(user_dn, server_details.get('pwd'))
		result = connect.search_s(base_dn, ldap.SCOPE_SUBTREE, filters)
		for dn, r in result:
			dn = str(dn)	
			mail = str(r['mail'][0])
			user_id = str(r['uid'][0])
			role = str(r['description'][0])

		if dn:
			connect.simple_bind_s(dn,pwd)
			status = True
		else:
			self.fail("Not a valid LDAP user")

	except ldap.LDAPError, e:
		connect.unbind_s()
		status = False
Example #5
0
def ldap_auth(user, pwd, server_details):
	from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection
	import ldap

	status = True
	mail = None
	user_id = None
	dn = None

	conn, user_dn, base_dn = set_ldap_connection(server_details)
	filters = "uid=*"+user+"*"
	role = 'Default'
	try:
		# l = ldap.initialize('ldap://ldap.forumsys.com/')
		conn.simple_bind_s(user_dn, pwd)
		result = conn.search_s(base_dn, ldap.SCOPE_SUBTREE, filters)

		for dn, r in result:
			dn = str(dn)
			mail = str(r['mail'][0])
			user_id = str(r['uid'][0])
			role = r.get('description') if r.get('description') else 'Default'
		if dn:
			conn.simple_bind_s(dn,pwd)
			status = True
		else:
			frappe.msgprint("Not a valid LDAP user", raise_exception=1)
	except ldap.LDAPError, e:
		conn.unbind_s()
		status = False
		frappe.msgprint("Incorrect UserId or Password", raise_exception=1)
Example #6
0
def ldap_auth(user, pwd, server_details):
    from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection
    import ldap

    status = True
    mail = None
    user_id = None
    dn = None

    conn, user_dn, base_dn = set_ldap_connection(server_details)
    filters = "uid=*" + user + "*"
    role = 'Default'
    try:
        # l = ldap.initialize('ldap://ldap.forumsys.com/')
        conn.simple_bind_s(user_dn, pwd)
        result = conn.search_s(base_dn, ldap.SCOPE_SUBTREE, filters)

        for dn, r in result:
            dn = str(dn)
            mail = str(r['mail'][0])
            user_id = str(r['uid'][0])
            role = r.get('description') if r.get('description') else 'Default'
        if dn:
            conn.simple_bind_s(dn, pwd)
            status = True
        else:
            frappe.msgprint("Not a valid LDAP user", raise_exception=1)
    except ldap.LDAPError, e:
        conn.unbind_s()
        status = False
        frappe.msgprint("Incorrect UserId or Password", raise_exception=1)
Example #7
0
def ldap_connect():
	from frappe_ldap.templates.pages.ldap_login import get_details
	from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection
	
	server_details = get_details()

	connect, user_dn, base_dn = set_ldap_connection(server_details)
	filters =  "uid=*"

	new_created = [] 
	enabled_profiles = []

	try:
		#if authentication successful, get the full user data	
		connect.simple_bind_s(user_dn, server_details.get('pwd'))

	except ldap.LDAPError, e:
		connect.unbind_s()
Example #8
0
def ldap_connect():
    from frappe_ldap.templates.pages.ldap_login import get_details
    from frappe_ldap.ldap.doctype.ldap_settings.ldap_settings import set_ldap_connection

    server_details = get_details()

    connect, user_dn, base_dn = set_ldap_connection(server_details)
    filters = "uid=*"

    new_created = []
    enabled_profiles = []

    try:
        #if authentication successful, get the full user data
        connect.simple_bind_s(user_dn, server_details.get('pwd'))

    except ldap.LDAPError, e:
        connect.unbind_s()