[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: XACML OID tag?
>Perhaps you are simply looking for an OID to put arbitrary XML in a
cert, so
this response will be overkill, but I believe your message implies
a lack of
understanding of the XML security work currently going on at OASIS
(SAML and
XACML)
>XACML is defining the means to express Access
Control Policies. I don't
really see what the semantics of an access control
policy in the middle of a
cert would be.
>Perhaps you are thinking of SAML. SAML has Attribute Assertions which
are
almost like Attribute Certs. Also it has Authentication Assertions which
seem mostly useful in non-PKI environment. Finally there are Authorization
Decision Assertions, which are likely to be quite specific to a resource and
short lived. Again it is not clear what putting one in a cert would signify
exactly.
I very well may be confused — it certainly wouldn't be the first
time!
The last time I looked at SAML, it had "entitlements", but they were an
unspecified bag of bits, and I was under the impression that the intent was for
those entitlements to eventually be expressed in XACML. Since XACML hasn't
published anything yet, at least to my understanding, I done';t know what it
would contain. But if you are correct, and XACML is a way of expressing an
access control POLICY, rather than granting a particular user some particular
right or capability, then you are right — including XACML in a certificate
wouldn't make much sense. So perhaps I need to include the SAML Attribute
Assertions instead.
In any case, I'm not quite ready to buy into the necessity of recoding all
of the infrastructure in XML — it just seems like too big a task to bite off
right now, with less than a solid business case justification (hype doesn't
count).
So what I was hoping to do was to come half way to the mountain, and play
around with some XML to learn more about the possible problems — get my feet
wet, so to speak.
Since we have existing support for X.509-based authentication to eDirectory
and other applications, putting some XML attributes in the certificate would
take advantage of that infrastructure, while using XML for the attribute
assertion would presumably provide a mechanism for supporting extranet
authentication, assuming the parties agree as to both the name of the attribute
(easy), and the precise semantics (much harder, generally).
>Of course
all can be signed using XMLdsig and thus be consumers of PKIX
mechanisms.
But I am unclear what sort of a use case you have in mind.
I don't really want to have to implement XMLdsig at this point in time,
as I don't see what advantages it provides over existing IETF-standardized
signature mechanisms. If I can simply drop the attribute assertions into
an X.509 certificate issued by the organization that is attesting to the
attributes (and the user's identity, for what that's worth), then I don't have
to do anything extra. XMLdsig seems like politically correct overkill, and
I can't afford that.
>If you believe X.509 Attribute Certs are broken
(as opposed to unused) I
would like to hear why, since SAML Attribute
Assertions are very similar. On
the other hand, SAML has a lot of other
machinery, so perhaps we have
already addressed your concerns.
I do believe that X.509 attribute certificates are broken, as well as
unused. The last time we went through some of those issues on the PKIX
list, it became apparent that controlling the delegation of attributes through a
chain of attribute certs was even more difficult than controlling identity
assertions via policy constraints, name subordination, etc. As a result,
the only uses that I have heard be suggested for attribute certs used only a
one-level deep model, so that selecting the root validates all of the
certificates under that root. To me, that doesn't seem to scale very
well.
This same issue of the control of delegation concerns me even more in SAML,
because in at least some of the use cases, every enterprise effectively becomes
their own identity and attribute authority. Given the experience we have
so far with X.509 certificates, there isn't much evidence to suggest that most
enterprises will do a very good job of this. Even some of the best public
CAs have trouble with this, as witness the bogus Microsoft code signing
certificate.
To my way of thinking, it is extremely important that every entity in the
delegation chain be able to control delegation of any particular attribute, both
up and down the chain. The top level root and some subordinate CA may
decide that they don't want to delegate some particular authority to a sub-CA,
and in that case it shouldn't matter what that sub-CA claims — the relying party
should be able to tell quickly and easily that that right wasn't granted.
On the other hand, the relying party may decide that he doesn't want to trust
some higher level CA or even some root CA with respect to some particular
attribute. If Osama ben Laden grants me the right to access the CIA's
mainframe in a signed XML entitlement, I doubt that the CIA will be very
impressed.
It seems to me that if the only controls you have in this space is
certificate chaining, then you are forced into an all or nothing
situation. You either have to establish a unique root and a unique
certificate chain for each individual attribute , or you have to lump several
attributes into an indistinguishable group of capabilities and either accept
them all or reject them all. both alternatives seem unacceptable.
ON the other hand, a bit-oriented MAC label can solve these problem
easily — you just AND all of the capabilities together, from the top to the
bottom of the chain, and see what you have when you get through. I'll be
happy to send you the URL of a document that specifies how all this can be done
if you are interested.
Using XML names rather than bits may make this process a little bit more
user-friendly, although it also tends to make negation somewhat harder.
I'm sure that there are other problems, and I'm equally sure that I don't
understand them all.
In any case, thanks for the education, and I'll go do some more
reading.
Bob