Esempio n. 1
0
    def authenticate(self, remote_user):
        user = RemoteUserBackend.authenticate(self, remote_user)
        if not user:
            return user

        # Create profile if it doesn't exist
        try:
            profile = user.get_profile()
        except IetfUserProfile.DoesNotExist:
            profile = IetfUserProfile(user=user)
            profile.save()

        # Remove any automatic groups, the proper ones will be retrieved by 
        # find_groups
        groups = [group for group in user.groups.exclude(name__in=AUTOMATIC_GROUPS)]

        # Update group memberships
        group_names = IetfUserBackend.find_groups(user.username)
        for group_name in group_names:
            # Create groups as needed
            group,created = Group.objects.get_or_create(name=group_name)
            if created:
                log("IetfUserBackend created Group '%s'" % (group_name,))
            groups.append(group)
        user.groups = groups
        return user
Esempio n. 2
0
 def authenticate(self, remote_user):
     print "auth", remote_user
     u = _get_ldap_users().get(remote_user.lower())
     if u is None:
         print "not found"
         return None
     else:
         print u
         return RemoteUserBackend.authenticate(self, remote_user)
Esempio n. 3
0
 def authenticate(self, remote_user):
     user = RemoteUserBackend.authenticate(self, remote_user)
     if Resident.objects.filter(athena=user.username).count() == 0:
         return None
     return user
Esempio n. 4
0
 def configure_user(self, user):
     user = RemoteUserBackend.configure_user(self, user)
     user.email = user.username
     user.is_superuser = True
     user.save()
     return user
Esempio n. 5
0
 def authenticate(self, remote_user):
     user = RemoteUserBackend.authenticate(self, remote_user)
     if Resident.objects.filter(athena=user.username).count() == 0:
         return None
     return user