[Samba] ACL: need additional samba option ?
Pierre Dehaen
dehaen at milano.drever.be
Tue Aug 13 07:18:01 GMT 2002
Hi All,
I need to setup the following rights behavior trhough samba and I'm currently
stuck after lots of unsuccessful tests. Maybe one of you has an idea or a
solution to this problem...
Here it comes:
- A share must be available only to some users belonging to the "project"
group.
That's easy:
valid users = @project
- There are several administrator-created directories in the share
corresponding to the departments of the company. Only some users must
have access to each directory, in read only mode for some, in read/write
mode for others.
We cannot use the unix groups because of the limitation saying a user may
only be member of 15 (or 16 I don't remember) groups. So I started playing
with ACLs: each user with read or read/write access has an ACL on those
top directories and a default entry also (default:user:john:r-x for instance).
The mask and default mask (ACL) are set to rwx.
- Under these top directories, read only users must be able to read all files,
and read/write users must be able to create files and subdirectories. When a
file/sdir is created by a user, only that user should be able to modify or delete
the file/sdir unless additional rights are given by him/her through the windows
permissions.
The solution now:
- I created acls on the top directories, including default entries:
# ls -ld topdir
drwx------+ 7 root other 512 Aug 13 16:00 topdir/
# getfacl topdir
# file: topdir
# owner: peter
# group: noaccess
user::rwx
user:john:rwx
user:johnny:rwx
user:jack:r-x
group::---
mask:rwx
other:---
[and the same entries with default: as prefix]
Note that I set the group to "noaccess" to make sure it will not interfere with
the user specific rights.
- I set the following options on the samba share:
read only = no
inherit permissions = yes
inherit acls = yes
force group = noaccess
Note that default entries should not be very useful here because I used the
samba options "inherit".
This works when john creates a file -rights are inherited- but I don't know how
to set the rights of all users but the owner to "read only" maximum because
for now they will get the same rights as on the parent directory.
And this doesn't work when john creates a subdirectory because the mask is
set to "---" and the effective perms are null too !
- Note that I tested also without the inherit options. I hoped the "default:"
would do but then another problem comes: the mask is set based on the
permissions of the group...
- So I'm stuck now ! I think the solution would be to have two more samba
options:
force file acl mask = r-x
force directory acl mask = rwx
I'm sorry for having been so long. Well, if you're still here, you're maybe
interested...
Thank in advance for any help,
Pierre
More information about the samba
mailing list