The challenge of interpreting and translating labels is that one system
needs to know a lot of info about its peer. And there is no good way to
describe the (sometimes subtle) difference. I think this problem may be
harder on DTE systems than on MLS systems, I believe.
I'm not sure we will ever be able to arrive at a solution that requires a
system to be able to understand the security policy/labels of another; things
change to much and I don't think anyone's crystal ball is that good.
Personally I think the best we can do is hope for a solution that allows a
system to understand a security policy/label system defined by a pre-existing
DOI definition. If we can do that then we can at least allow two different
systems to communicate via an agreed upon DOI regardless of their internal
security policies/labels. I'll admit it isn't perfect, but I think the
problem space is much smaller and likely to have less churn over time.
Ultimately I believe that the required label translation information
(wire/DOI label to internal and the other way around) is going to need to
be bundled with the system's security policy and distributed as a single
"package". Granted this does require prior knowledge of the DOIs in use
but I believe this is a much easier requirement than the opposite. From
a practical point of view this isn't too far removed from the notion of
sending sending label encoding data upon joining the network, the big
difference is that we are sending both security policy and label
encoding/DOI-translation data at the same time (in the TSOL case I
suspect this would just be the label encoding data, which may mean the
original poster had this in mind).
Depending how different the systems are, the "package" content will be
different.
Yep, that is the point; squares hole need square pegs, round holes need round
pegs.
Assuming we can assemble all the information required to do
label translation correctly into a package, passing that around the
systems seem inefficient, non-scalable ...
Honestly I don't see it as being that far removed from many of the current
solutions that ship "security policy" to individual systems through the
network/enterprise. Also look at some of the NAC stuff that is being used
these days, how is a security policy/translation "package" all that different
from an anti-virus update or a set of os/application patches?
It is a solvable problem, or at least one that users have shown a willingness
to tolerate.
... and probably outside the scope of labeled NFSv4 enhancement.
Perhaps. Keep in mind I'm trying to think a bit more generically; if that
isn't the goal I'll be happy to go back to my corner and sit quietly :)
So realistically, I think the DOI + opaque label is useful between very
compatible systems.
Of course. I agree there are a lot of things you can do with a DOI + opaque
label, especially if you are only concerned about end-to-end security issues
which I believe is the case for labeled NFS.
Given that limitation, may be the "package" is small enough and can be
passed in RPC layer during authentication so that MLS can share files with
like MLS systems, and same is true for DTE, fmac, smack, ....
Well, I think all that the opaque label buys you is the ability to limit who
you share the security policy/translation "package" with, as those systems
that participate in the labeled communication (be it NFS, generic IP or some
other random service) still need to worry about label translation and security
policy differences if they want to enforce policy locally.