mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-10 21:10:17 +02:00
Corrected authenticator group return
It works.
This commit is contained in:
parent
d1038d1b72
commit
b8db2c464b
@ -1,6 +1,7 @@
|
||||
from django.contrib import admin
|
||||
from .models import AuthTS
|
||||
from .models import DiscordAuthToken
|
||||
from .models import MumbleUser
|
||||
|
||||
class AuthTSgroupAdmin(admin.ModelAdmin):
|
||||
fields = ['auth_group','ts_group']
|
||||
@ -9,3 +10,5 @@ class AuthTSgroupAdmin(admin.ModelAdmin):
|
||||
admin.site.register(AuthTS, AuthTSgroupAdmin)
|
||||
|
||||
admin.site.register(DiscordAuthToken)
|
||||
|
||||
admin.site.register(MumbleUser)
|
||||
|
@ -102,11 +102,15 @@ class MumbleManager:
|
||||
@staticmethod
|
||||
def update_groups(username, groups):
|
||||
logger.debug("Updating mumble user %s groups %s" % (username, groups))
|
||||
safe_groups = set([g.replace(' ', '-') for g in groups])
|
||||
safe_groups = list(set([g.replace(' ', '-') for g in groups]))
|
||||
groups =''
|
||||
for g in safe_groups:
|
||||
groups = groups + g + ','
|
||||
groups = groups.strip(',')
|
||||
if MumbleUser.objects.filter(username=username).exists():
|
||||
logger.info("Updating mumble user %s groups to %s" % (username, safe_groups))
|
||||
model = MumbleUser.objects.get(username=username)
|
||||
model.groups = safe_groups
|
||||
model.groups = groups
|
||||
model.save()
|
||||
else:
|
||||
logger.error("User %s not found on mumble. Unable to update groups." % username)
|
||||
|
@ -45,4 +45,4 @@ class MumbleUser(models.Model):
|
||||
groups = models.TextField(blank=True, null=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.username + ' - ' + str(self.user)
|
||||
return self.username
|
||||
|
1
thirdparty/Mumble/.gitignore
vendored
Normal file
1
thirdparty/Mumble/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
authenticator.ini
|
6
thirdparty/Mumble/authenticator.py
vendored
6
thirdparty/Mumble/authenticator.py
vendored
@ -500,10 +500,12 @@ def do_main_program():
|
||||
|
||||
uid, upwhash, ugroups = res
|
||||
|
||||
groups = ugroups.split(',')
|
||||
|
||||
if allianceauth_check_hash(pw, upwhash):
|
||||
info('User authenticated: "%s" (%d)', name, uid + cfg.user.id_offset)
|
||||
debug('Group memberships: %s', str(ugroups))
|
||||
return (uid + cfg.user.id_offset, entity_decode(name), ugroups)
|
||||
debug('Group memberships: %s', str(groups))
|
||||
return (uid + cfg.user.id_offset, entity_decode(name), groups)
|
||||
|
||||
info('Failed authentication attempt for user: "%s" (%d)', name, uid + cfg.user.id_offset)
|
||||
return (AUTH_REFUSED, None, None)
|
||||
|
Loading…
x
Reference in New Issue
Block a user