未提供项目说明
django-adtools的Python项目详细描述
Django adtools是一个包含一组实用程序的包,用于将基于Django框架的web应用程序与 MS ActiveDirectory。在
所有文档都在“docs/build”目录中,联机位置为 http://django-adtools.readthedocs.org
使用Active Directory身份验证系统的简短示例
# views.pyfromdjango_adtools.ad.ad_toolsimportad_login,ad_clear_usernamedefpost(self,request):form=LoginForm(request.POST)ifform.is_valid():ifad_login(# checking, if user is able to login using Active Directory credentialsdc=DomainController.get(),# A hostname or an ip address of a Domain Controllerusername=form.cleaned_data['username'],password=form.cleaned_data['password'],domain=settings.ADTOOLS_DOMAIN,# A name of domain, e.g. domain.comgroup=settings.ADTOOLS_GROUP,# A group name of valid users):# get full domain username like user@domain.ruusername_without_domain=ad_clear_username(form.cleaned_data['username'])username=f"{username_without_domain}@{settings.ADTOOLS_DOMAIN}"try:# looking for existing user profile (case insensitive)user=User.objects.get(username__iexact=username)exceptUser.DoesNotExist:# create a new user profile, if it does not existuser=User(username=username)user.save()login(request=request,user=user)returnredirect(reverse(f'{__package__}:index'))context={'package':__package__,'form':form,'login_failed':True,}returnrender(request,f"{__package__}/login.html",context)
- 项目
标签: