From: Nicolas Williams <Nicolas.Williams-xsfywfwIY+M@public.gmane.org>
To: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Tom Haynes <Thomas.Haynes-xsfywfwIY+M@public.gmane.org>,
NFS list <linux-nfs@vger.kernel.org>,
nfs-discuss-xZgeD5Kw2fzokhkdeNNY6A@public.gmane.org
Subject: Re: [nfs-discuss] mount.nfs: access denied by server
Date: Wed, 26 Aug 2009 16:03:48 -0500 [thread overview]
Message-ID: <20090826210348.GJ1033@Sun.COM> (raw)
In-Reply-To: <1251246105.5403.12.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
On Tue, Aug 25, 2009 at 08:21:45PM -0400, Trond Myklebust wrote:
> On Tue, 2009-08-25 at 18:37 -0500, Nicolas Williams wrote:
> > Looking at code we have
> > ...
>
> Sorry. I didn't mean to force you into detailed explanations of the
> code. As a NetApp employee, I'm not sure I'm licensed to even run
> OpenSolaris at this point, let alone look at the code. :-)
Well, you don't need a license to look at it (though you might need
permission from your employer, and they may not grant it), and I can't
imagine that my mentioning a few function names could taint you in any
way. Nor would I normally keep from mentioning actual OpenSolaris code
on OpenSolaris discuss lists. If it helps generic protocol discussions
I'm willing to refrain from further discussing code in any one thread
once you ask that I do, but I'd much rather such discussions take place
in the IETF NFSv4 WG mailing list instead then (where I would generally
refrain from posting code).
> > Which means that WRONGSEC -> SECINFO -> updates the entire mount's sec.
>
> OK. This is sort of what I expect we will do for Linux too.
OK.
> The protocol will even allow you to set the secinfo on a per-file basis.
True.
> That sounds insane to me, but...
NFS clients typically allow you to mount individual files, not just
directories.
There's no "MOUNT" operation in the protocol. Mounts have traditionally
been entirely a client-side concept. NFSv4 exposes server-side
hierarchical filesystem mount structures to the clients, but there's
still no MOUNT operation, and clients needn't even have a notion of
"mount" (POSIX clients may have to, but others may not).
Clients could even treat every FH as needing a "mount" (meaning df(1),
mount(1M), nfsstat(1M), etcetera may list every single file and
directory recently accessed as mounts).
OpenSolaris could react to a WRONGSEC by instantiating a mount
dynamically where there really shouldn't be one. It may even have to,
so that sec= settings may be reported to users through existing
interfaces (unless we don't care for that). The same might apply to
Linux. This sort of complexity argues that SECINFO should be
per-filesystem, but see below.
> Anyhow, I think our Linux client should go with the 'remove security
> flavours only on mountpoints' rule for now, and then we'll see in time
> if any users can justify a more fine grained implementation.
BTW, the same considerations apply to sub-shares with other option
differences.
For example (note: I've not tested this):
server% mount /foo
server% share -F nfs -o rw /foo
server% mkdir /foo/bar
server% mkdir /foo/ick
server% share -F nfs -o ro /foo
client% mount server:/foo /foo
client% touch /foo/ick/a
client% touch /foo/bar/a
touch: cannot create /foo/bar/a: Read-only file system
client% touch /foo/ick/b
touch: cannot create /foo/bar/a: Read-only file system
We ought either say that clients MUST cope with hierarchical shares
within a single filesystem, or that hierarchical shares within a
filesystem MUST NOT be allowed. I'm not sure that I'd be ready to say
the latter, while on the other hand the complexity of the former is
certainly a challenge.
Nico
--
next prev parent reply other threads:[~2009-08-26 21:46 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-20 7:13 mount.nfs: access denied by server Wu Fengguang
2009-08-20 7:19 ` Wu Fengguang
2009-08-20 13:02 ` Trond Myklebust
[not found] ` <1250773349.5352.23.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-21 1:27 ` Wu Fengguang
2009-08-21 1:27 ` Wu Fengguang
2009-08-21 2:36 ` Trond Myklebust
[not found] ` <1250822171.6514.29.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-21 17:50 ` Chuck Lever
2009-08-21 17:50 ` Chuck Lever
2009-08-22 1:48 ` Wu Fengguang
2009-08-21 18:16 ` Fwd: " Chuck Lever
2009-08-21 18:20 ` J. Bruce Fields
2009-08-21 20:20 ` Chuck Lever
2009-08-24 12:15 ` Fwd: " Steve Dickson
2009-08-21 18:24 ` J. Bruce Fields
2009-08-21 18:46 ` Chuck Lever
2009-08-21 20:04 ` J. Bruce Fields
2009-08-21 20:18 ` Tom Haynes
[not found] ` <4A8F0118.60705-xsfywfwIY+M@public.gmane.org>
2009-08-21 20:39 ` Peter Staubach
2009-08-21 20:59 ` J. Bruce Fields
2009-08-21 21:08 ` Trond Myklebust
[not found] ` <1250888892.5700.7.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-21 21:21 ` J. Bruce Fields
2009-08-21 20:36 ` Chuck Lever
2009-08-21 21:15 ` Trond Myklebust
[not found] ` <1250889345.5700.11.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-21 21:21 ` Tom Haynes
[not found] ` <4A8F0FCC.2080709-xsfywfwIY+M@public.gmane.org>
2009-08-21 21:25 ` Trond Myklebust
2009-08-21 21:30 ` J. Bruce Fields
2009-08-21 21:40 ` Trond Myklebust
[not found] ` <1250890836.5700.19.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-21 21:47 ` J. Bruce Fields
2009-08-21 21:51 ` Trond Myklebust
[not found] ` <1250891463.5700.21.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-24 16:10 ` J. Bruce Fields
2009-08-24 16:22 ` Chuck Lever
2009-08-24 17:06 ` Trond Myklebust
[not found] ` <1251133618.6325.262.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-24 17:41 ` J. Bruce Fields
2009-08-25 15:36 ` Chuck Lever
2009-08-25 16:49 ` Tom Haynes
[not found] ` <4A94162C.20904-xsfywfwIY+M@public.gmane.org>
2009-08-25 16:58 ` Trond Myklebust
[not found] ` <1251219492.25372.3.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-25 18:17 ` Tom Haynes
[not found] ` <4A942ACF.4030502-xsfywfwIY+M@public.gmane.org>
2009-08-25 18:39 ` Trond Myklebust
[not found] ` <1251225543.25372.22.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-25 18:43 ` Trond Myklebust
[not found] ` <1251225797.25372.25.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-25 22:17 ` Tom Haynes
[not found] ` <4A9462E4.5020404-xsfywfwIY+M@public.gmane.org>
2009-08-25 23:20 ` Trond Myklebust
[not found] ` <1251242416.5403.3.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-25 23:37 ` [nfs-discuss] " Nicolas Williams
[not found] ` <20090825233758.GZ1033-UdXhSnd/wVw@public.gmane.org>
2009-08-26 0:21 ` Trond Myklebust
[not found] ` <1251246105.5403.12.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2009-08-26 21:03 ` Nicolas Williams [this message]
2009-08-25 17:40 ` Chuck Lever
2009-08-25 18:02 ` Tom Haynes
2009-08-25 18:10 ` J. Bruce Fields
2009-08-25 19:05 ` Chuck Lever
2009-08-21 22:21 ` Chuck Lever
2009-08-21 21:41 ` Chuck Lever
2009-08-21 19:07 ` Thomas Haynes
[not found] ` <760BE185-BE57-42C2-817C-6776B5B66667-xsfywfwIY+M@public.gmane.org>
2009-08-21 19:22 ` Chuck Lever
2009-08-21 19:40 ` Tom Haynes
[not found] ` <4A8EF847.8030500-xsfywfwIY+M@public.gmane.org>
2009-08-21 20:04 ` Chuck Lever
2009-08-21 20:41 ` Peter Staubach
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090826210348.GJ1033@Sun.COM \
--to=nicolas.williams-xsfywfwiy+m@public.gmane.org \
--cc=Thomas.Haynes-xsfywfwIY+M@public.gmane.org \
--cc=Trond.Myklebust@netapp.com \
--cc=linux-nfs@vger.kernel.org \
--cc=nfs-discuss-xZgeD5Kw2fzokhkdeNNY6A@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.