Univention Bugzilla – Bug 29553
Kein Zugriff auf Samba4 share mit valid users = @groupname
Last modified: 2014-02-08 09:15:37 CET
Die Authorisierung über Gruppenmitgliedschaft funktioniert nicht bei Samba4-Shares die per "valid users = @group1" eine Zugriffsbeschränkung auf Gruppenmitglieder definiert haben. Getestet am Windows7-Client und per CLI: root@slave2:~# smbclient //localhost/share2b -Uuser2%univention Domain=[ARUCS31I14] OS=[Unix] Server=[Samba 4.0.0rc2] tree connect failed: NT_STATUS_ACCESS_DENIED root@slave2:~# getent group group1 group1:*:5037:user2 root@slave2:~# udm shares/share list --filter name=share2b name=share2b DN: cn=share2b,cn=shares,dc=arucs31i14,dc=qa ARG: None sambaDirectorySecurityMode: 0777 sambaHostsAllow: None owner: 0 sambaName: share2b sambaValidUsers: @group1 sambaCreateMode: 0744 group: 5001 [...] root@slave2:~# ls -ld /share2 drwxrwxr-x 2 root Domain Users 4096 4. Dez 03:47 /share2 Trägt man hingegen z.B. den Benutzer selbst ein, dann funktioniert der Zugriff. Bei Memberservern in der Samba4-Domäne funktioniert die Zugriffskontrolle über Gruppenmitgliedschaft.
Ein kurzer Test, die Posix-ID der Gruppe in idmap.ldb als ID_TYPE_BOTH zu deklarieren hat keine Änderung gebracht (die posix-ID ist hier ja vermutlich auch nicht relevant).
Der bekannte Workaround, die SID der Gruppe einzutragen funktioniert.
Vielleicht kann man auch einfach als Workaround im Listener-Modul @group in die SID konvertieren und in das shares.conf.d-Subfile schreiben.
Behoben durch den Patch für Bug #29983.
errata YAML: OK errata function / code: OK 3.1-1 changelog: OK 3.1-1 function / code: OK over Bug #30178
http://errata.univention.de/3.1-errata26.html
Same Problem with "valid users", "write list", "read list" after upgrade to 3.1-1. Temporary i used the sid of the groups.
I'm facing the very same problem with a standalone server. unix extensions are set to 'no'. valid users = @groupname force user = username force group = groupname uname -a FreeBSD Storage-10.NetOcean.Local 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 samba -V Version 4.1.4 How can I get the SID of a group in order the get the workaround running untill this is fixed?
Btw. here is a more detailed post of this issue: http://forums.freebsd.org/viewtopic.php?f=43&t=44769
(In reply to leo-huette from comment #8) > I'm facing the very same problem with a standalone server. > unix extensions are set to 'no'. > > valid users = @groupname > force user = username > force group = groupname > > uname -a > FreeBSD Storage-10.NetOcean.Local 10.0-RELEASE FreeBSD 10.0-RELEASE #0 > r260789: Thu Jan 16 22:34:59 UTC 2014 > root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 > > samba -V > Version 4.1.4 > > How can I get the SID of a group in order the get the workaround running > untill this is fixed? wbinfo --name-to-sid="groupname"? Otherwise you could check the patch Arvid send upstream: https://bugzilla.samba.org/show_bug.cgi?id=9570
Die nachfolgende Optionsänderung force group = S-1-22-2-2006 hat lediglich bewirkt, dass nun gar kein Zugriff mehr auf das Share gewährt wird. Verwende ich hier die korrekte Syntax? wbinfo --name-to-sid=tesgroup funktioniert leider nur für Gruppen, bei denen es keinen gleichnamigen Benutzer gibt. Wenn es zum Benutzernamen eine gleichnamige Gruppe gibt, so wird der Benutzername vorgezogen und hierfür die SID usgespuckt. Alternativ habe ich folgendes entdecken können, was jedoch leider fehlschlägt: wbinfo --gid-to-sid 2000 failed to call wbcGidToSid: WBC_ERR_DOMAIN_NOT_FOUND Could not convert gid 2000 to sid
(In reply to leo-huette from comment #11) > Die nachfolgende Optionsänderung > > force group = S-1-22-2-2006 > > hat lediglich bewirkt, dass nun gar kein Zugriff mehr auf das Share gewährt > wird. Verwende ich hier die korrekte Syntax? > > wbinfo --name-to-sid=tesgroup > funktioniert leider nur für Gruppen, bei denen es keinen gleichnamigen > Benutzer gibt. Wenn es zum Benutzernamen eine gleichnamige Gruppe gibt, so > wird der Benutzername vorgezogen und hierfür die SID usgespuckt. > > Alternativ habe ich folgendes entdecken können, was jedoch leider > fehlschlägt: > wbinfo --gid-to-sid 2000 > failed to call wbcGidToSid: WBC_ERR_DOMAIN_NOT_FOUND > Could not convert gid 2000 to sid Samba in der Konfiguration auf FreeBSD ist nicht so sehr unser Spezialgebiet. Am einfachsten auf der Samba Mailingliste nachfragen: https://lists.samba.org/mailman/listinfo/samba