adds drasl ldap admin group

This commit is contained in:
eyjhb 2025-04-12 18:21:44 +02:00
parent 4436f3918b
commit dcc7fdf028
Signed by: eyjhb
GPG key ID: 609F508E3239F920
3 changed files with 15 additions and 2 deletions

View file

@ -1,4 +1,4 @@
{ config, ... }: { config, lib, ... }:
let let
sources = import ./../../../shared/sources; sources = import ./../../../shared/sources;
@ -25,6 +25,15 @@ in {
ListenAddress = "localhost:${builtins.toString port}"; ListenAddress = "localhost:${builtins.toString port}";
# all ldap admins in group `drasl-admin` are default admins here
DefaultAdmins = config.mine.shared.lib.ldap.mkScope (lconfig: llib: let
admins = lib.forEach (
lib.filter
(v: lib.elem lconfig.groups.drasl_admin (v.groups or []))
(lib.attrValues lconfig.provision.users)
) (v: v.mail);
in admins);
CreateNewPlayer.Allow = true; CreateNewPlayer.Allow = true;
RegistrationNewPlayer.Allow = true; RegistrationNewPlayer.Allow = true;
AllowPasswordLogin = false; AllowPasswordLogin = false;

View file

@ -176,6 +176,8 @@ in {
groupOfUniqueNames = "groupOfUniqueNames"; groupOfUniqueNames = "groupOfUniqueNames";
}; };
provision = config.services.lldap.provision;
users = { users = {
admin = "admin"; admin = "admin";
# bind = "bind_user"; # bind = "bind_user";
@ -275,7 +277,8 @@ in {
user_id = name; user_id = name;
display_name = name; # required for nextcloud display_name = name; # required for nextcloud
membermail = mkProvisionEmail name; membermail = mkProvisionEmail name;
groups = with lconfig.groups; [ admin nextcloud_admin grafana_admin member ]; mail = mkProvisionEmail name;
groups = with lconfig.groups; [ admin nextcloud_admin grafana_admin drasl_admin member ];
membermaildiskquota = 100*1024*1024; # mb membermaildiskquota = 100*1024*1024; # mb
nextcloudquota = 100*1024*1024; # mb nextcloudquota = 100*1024*1024; # mb
}); });

View file

@ -37,6 +37,7 @@
"system_service" = {}; "system_service" = {};
"system_mail" = {}; "system_mail" = {};
"nextcloud_admin" = {}; "nextcloud_admin" = {};
"drasl_admin" = {};
"grafana_admin" = {}; "grafana_admin" = {};
}; };