File System ACLs: Where to go from here in FreeBSD?
Allen
bsdlists at rfnj.org
Tue Sep 20 14:43:53 PDT 2005
Long message, excuse the butcher job.
On Sat, September 17, 2005 08:19, Robert Watson wrote:
>(b) We can consider a migration to NT/NFSv4-style ACLs, which is the route
> that Darwin has taken. They use the FreeBSD user space ACL library
> and POSIX.1e interfaces, but use ACLs with more NT-like semantics.
> In particular, they have notions of taking ownership, slightly finer
> grained directory controls, etc. This is a lot of work.
>Option (b) is an interesting new choice as compared to 1999, when NTFS
>ACLs were in the distinct minority in terms of the syntax and semantics
>they offered. However, they become much more appealing if we consider
>that there appears to be a much clearer mapping from NTFS ACLs to NFSv4
>ACLs than there is from POSIX.1e ACLs to NFSv4 ACLs. And the fact that
>Mike Smith at Apple has taken the time to make it sit behind our library
>for the Darwin implementation on HFS+, etc, is also quite interesting.
>When I implemented the library, it was my hope that it would support that
>sort of thing, but we never actually tried :-).
>If we don't start considering a move to Darwin/NTFS ACLs, then we run into
>a problem when it comes to implementing NFSv4 ACLs: the mapping and
>behavior is rather poor and unclear.
From a personal standpoint, going the Darwin/NFSv4/NTFS path is more
desirable to me simply because most of the networks I work on are
BSD+NT networks. Since I have no Solaris, Linux, or OSX boxes on
them and don't use NFS, I'm happy as long as SMB support continues to
get better, so either way isn't of a great deal of concern to me.
My question is, given that mapping NFSv4 onto the existing POSIX
structure is possibly ambiguous, is the reverse also true? With NTFS
giving finer grained control, and the implication in your writing
that mapping NFSv4 onto Darwin/NTFS is trivial in comparison, is it
possible to make the native mode Darwin/NTFS compatible and then map
the POSIX side onto that?
My very informal investigation of POSIX.1e leads me to believe that
implementation on a system with NTFS style ACLs and features would be
trivial compared to the reverse; Adding POSIX.1e to NT for example
strikes me as fairly easy.
It's also of passing interest that POSIX.1e never became a "true"
POSIX standard, is incomplete, and has been abandoned by IEEE; Down
that road lies even more cross-platform interoperability and
compatibility problems I would imagine, if parts of the draft are
open to interpretation.
More information about the freebsd-security
mailing list