Bonjour,
J'essaie de mettre en place une authentification par LDAP sur mon site web Django.
Lors de la connexion, je voudrais récupérer les infos du user (n° de tel, email, cn)
Dans le fichier settings.py, j'ai paramétré la variable AUTH_LDAP_USER_ATTR_MAP :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 AUTH_LDAP_USER_ATTR_MAP = { "uid": "uid", "email": "email", "cn": "cn", "telephoneNumber": "telephoneNumber", }
Je défini une vue user_login :
Mais le print(user) ne m'affiche que le username (uid), et pas les autres variables.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 def user_login(request): if request.method == 'POST': form = LoginForm(request.POST) if form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] user = LDAPBackend().authenticate(request, username=username, password=password) print(user) if user: login(request, user) return redirect('home') else: form = LoginForm() return render(request, 'login.html', {'form': form})
Qu'est ce que j'ai oublié de paramétrer?
Merci,
Nico
Partager