<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: My Next Attempt at Controversy: Roles and the (ir)relevance of NIST</title>
	<atom:link href="http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html</link>
	<description>An Architect&#039;s Quest to make sense of the world of Identity and Access Management</description>
	<lastBuildDate>Mon, 23 Aug 2010 12:56:09 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: mac to ipod</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-207</link>
		<dc:creator>mac to ipod</dc:creator>
		<pubDate>Mon, 05 Apr 2010 13:42:24 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-207</guid>
		<description>NIST RBAC is an important tool to any discussion on role structures. But it should not be treated as complete by any means, merely a start.</description>
		<content:encoded><![CDATA[<p>NIST RBAC is an important tool to any discussion on role structures. But it should not be treated as complete by any means, merely a start.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Felix-Johannes Jendrusch</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-127</link>
		<dc:creator>Felix-Johannes Jendrusch</dc:creator>
		<pubDate>Wed, 09 Sep 2009 17:01:39 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-127</guid>
		<description>I just stumbled over this as I&#039;m working on a project in my college. I don&#039;t know what NIST RBAC is but we basically have the same problem in our project.

Role(Doctor)
Resource(Patient)
Privileg(medicate)

Person(Doctor X, {Role(Doctor)})
Person(Doctor Y, {Role(Doctor)})

Rule(Role(Doctor), Resource(Patient), Privilege(medicate), restrictive = true)

Resource-Instance(Patient, Patient A)
Resource-Instance(Patient, Patient B)

Restriction(Person(Doctor X), Resource-Instance(Patient, Patient A))
Restriction(Person(Doctor Y), Resource-Instance(Patient, Patient B))

allowed(Person(Doctor X), Resource-Instance(Patient, Patient A), Privilege(medicate)) = true
allowed(Person(Doctor X), Resource-Instance(Patient, Patient B), Privilege(medicate)) = false

As the given rule is &quot;restrictive&quot; restrictions must be checked. Using this approach you can keep the actual RBAC very simple but extend it with a lot of restrictions to achieve your requirements.

It&#039;s still only a blueprint but should work well even with role and resource inheritance.

Best regards
Felix</description>
		<content:encoded><![CDATA[<p>I just stumbled over this as I&#8217;m working on a project in my college. I don&#8217;t know what NIST RBAC is but we basically have the same problem in our project.</p>
<p>Role(Doctor)<br />
Resource(Patient)<br />
Privileg(medicate)</p>
<p>Person(Doctor X, {Role(Doctor)})<br />
Person(Doctor Y, {Role(Doctor)})</p>
<p>Rule(Role(Doctor), Resource(Patient), Privilege(medicate), restrictive = true)</p>
<p>Resource-Instance(Patient, Patient A)<br />
Resource-Instance(Patient, Patient B)</p>
<p>Restriction(Person(Doctor X), Resource-Instance(Patient, Patient A))<br />
Restriction(Person(Doctor Y), Resource-Instance(Patient, Patient B))</p>
<p>allowed(Person(Doctor X), Resource-Instance(Patient, Patient A), Privilege(medicate)) = true<br />
allowed(Person(Doctor X), Resource-Instance(Patient, Patient B), Privilege(medicate)) = false</p>
<p>As the given rule is &#8220;restrictive&#8221; restrictions must be checked. Using this approach you can keep the actual RBAC very simple but extend it with a lot of restrictions to achieve your requirements.</p>
<p>It&#8217;s still only a blueprint but should work well even with role and resource inheritance.</p>
<p>Best regards<br />
Felix</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alejandro Lapeyre</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-121</link>
		<dc:creator>Alejandro Lapeyre</dc:creator>
		<pubDate>Thu, 23 Apr 2009 10:53:38 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-121</guid>
		<description>Another point of view is: The role is &quot;Doctor of patient M&quot;. Since the many part is &quot;patient M&quot; it is the the patients who are assigned to the role.
The role &quot;Doctor of patient M&quot; should be created as a child of the &quot;Doctor X&quot; user object. The role should be created automatically by the implementation whenever a user is assigned to the &quot;Doctor&quot; role. In this case we would have object specific roles, and not relationship roles, wich (I think) is also not considered in the standard.</description>
		<content:encoded><![CDATA[<p>Another point of view is: The role is &#8220;Doctor of patient M&#8221;. Since the many part is &#8220;patient M&#8221; it is the the patients who are assigned to the role.<br />
The role &#8220;Doctor of patient M&#8221; should be created as a child of the &#8220;Doctor X&#8221; user object. The role should be created automatically by the implementation whenever a user is assigned to the &#8220;Doctor&#8221; role. In this case we would have object specific roles, and not relationship roles, wich (I think) is also not considered in the standard.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philip Jackson</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-79</link>
		<dc:creator>Philip Jackson</dc:creator>
		<pubDate>Sun, 10 Aug 2008 04:55:46 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-79</guid>
		<description>Scenario B describes a one-to-many relationship between users and resources (one doctor needs permission to access many patient records). The RBAC model was primarily developed as a solution for many-to-many relationships (i.e., where many users can share common permissions to many resources). The key benefit of RBAC roles is the sharing of common permissions.
In order to grant each doctor permission to specific patient records, the RBAC solution would require the creation of a special role for each doctor (e.g., Doctor X&#039;s &#039;Attending Doctor&#039; role). Yes, this would result in an explosion of roles, but the RBAC model still works.
Since Scenario B is fundamentally a one-to-many situation, managing these doctor-to-patients policies will always be a cumbersome task. There is no technology that can get around the mathematics of it.
</description>
		<content:encoded><![CDATA[<p>Scenario B describes a one-to-many relationship between users and resources (one doctor needs permission to access many patient records). The RBAC model was primarily developed as a solution for many-to-many relationships (i.e., where many users can share common permissions to many resources). The key benefit of RBAC roles is the sharing of common permissions.<br />
In order to grant each doctor permission to specific patient records, the RBAC solution would require the creation of a special role for each doctor (e.g., Doctor X&#8217;s &#8216;Attending Doctor&#8217; role). Yes, this would result in an explosion of roles, but the RBAC model still works.<br />
Since Scenario B is fundamentally a one-to-many situation, managing these doctor-to-patients policies will always be a cumbersome task. There is no technology that can get around the mathematics of it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nishant Kaushik</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-78</link>
		<dc:creator>Nishant Kaushik</dc:creator>
		<pubDate>Fri, 18 Jul 2008 23:35:04 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-78</guid>
		<description>Chandra Nath,
Your solution for solving the use case using static roles is the very solution that companies try to avoid as it leads to an explosion of roles (Ri, as you put it, where i will reach into the 10s of 1000s very quickly). If it was simply defining a role, this would not be a problem. But each such role has to be associated with a new policy, which is a cumbersome task.
No standard worth is salt is born fully defined. Most standards go through several iterations (look at SAML or SPML), usually driven by a better understanding of prevalent and emerging use cases. I agree that you cannot keep changing the standard for every edge use case, but the relationship-based scenario is not an edge case, it is a significant portion of the use cases that exist across different verticals - government, military, healthcare, higher ed and retail (and those are just the ones I have seen). Adherence to the principles of NIST RBAC have forced one customer into a design involving over 50,000 roles because of data striping. That is not a sustainable solution when better ones are possible.
</description>
		<content:encoded><![CDATA[<p>Chandra Nath,<br />
Your solution for solving the use case using static roles is the very solution that companies try to avoid as it leads to an explosion of roles (Ri, as you put it, where i will reach into the 10s of 1000s very quickly). If it was simply defining a role, this would not be a problem. But each such role has to be associated with a new policy, which is a cumbersome task.<br />
No standard worth is salt is born fully defined. Most standards go through several iterations (look at SAML or SPML), usually driven by a better understanding of prevalent and emerging use cases. I agree that you cannot keep changing the standard for every edge use case, but the relationship-based scenario is not an edge case, it is a significant portion of the use cases that exist across different verticals &#8211; government, military, healthcare, higher ed and retail (and those are just the ones I have seen). Adherence to the principles of NIST RBAC have forced one customer into a design involving over 50,000 roles because of data striping. That is not a sustainable solution when better ones are possible.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chandra Nath</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-77</link>
		<dc:creator>Chandra Nath</dc:creator>
		<pubDate>Thu, 17 Jul 2008 19:38:50 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-77</guid>
		<description>Is the NIST RBAC standard fundamentally flawed, given that it is missing a key element in access control decisions - relationships?
Your thesis :an unequivocal  &quot;yes, it is&quot; - seemed to be flawed also.
The Access Control around the medical charts of Y is based on a role Ri which defines a specific role of the doctor who treats the set of patients Pi where i goes from 1..n
Fundamentally, NIST model is not flawed but requires some  additional roles to be defined and that is an operational matter. That does not make the fundamental theoretical strength of the NIST standard  flawed.
We can not have a new theoretical model to cater for each of  the new roles that might require to be created.
The strength of the NIST model lies in its ability to be extended to include all special circumstances by creation of certain additional roles.
If you feel strongly that relationship extension will make the NIST model really fool proof and propose a new standard in a formal peer reviewed paper, within minutes, some one will come out with a special case where that model also does not address the  very  special case.
If a special case can be addressed by creating a new role, the original standard does not need extension or modification, or else, we are in a slippery slope with all standards! That is not a very safe ground to be on  for any one seeking the comfort of a standard!
Chandra
</description>
		<content:encoded><![CDATA[<p>Is the NIST RBAC standard fundamentally flawed, given that it is missing a key element in access control decisions &#8211; relationships?<br />
Your thesis :an unequivocal  &#8220;yes, it is&#8221; &#8211; seemed to be flawed also.<br />
The Access Control around the medical charts of Y is based on a role Ri which defines a specific role of the doctor who treats the set of patients Pi where i goes from 1..n<br />
Fundamentally, NIST model is not flawed but requires some  additional roles to be defined and that is an operational matter. That does not make the fundamental theoretical strength of the NIST standard  flawed.<br />
We can not have a new theoretical model to cater for each of  the new roles that might require to be created.<br />
The strength of the NIST model lies in its ability to be extended to include all special circumstances by creation of certain additional roles.<br />
If you feel strongly that relationship extension will make the NIST model really fool proof and propose a new standard in a formal peer reviewed paper, within minutes, some one will come out with a special case where that model also does not address the  very  special case.<br />
If a special case can be addressed by creating a new role, the original standard does not need extension or modification, or else, we are in a slippery slope with all standards! That is not a very safe ground to be on  for any one seeking the comfort of a standard!<br />
Chandra</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-76</link>
		<dc:creator>James</dc:creator>
		<pubDate>Sat, 12 Jul 2008 15:56:28 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-76</guid>
		<description>There is no controversy as most folks agree. The challenge however is in coming up with a deeper industry playbook regarding how to approach roles and relationships.
The open role consortium is a great first step and I hope that Oracle will show leadership. If not, I can start my own controversy for lack of participation...
</description>
		<content:encoded><![CDATA[<p>There is no controversy as most folks agree. The challenge however is in coming up with a deeper industry playbook regarding how to approach roles and relationships.<br />
The open role consortium is a great first step and I hope that Oracle will show leadership. If not, I can start my own controversy for lack of participation&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: TIm Weil</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-75</link>
		<dc:creator>TIm Weil</dc:creator>
		<pubDate>Sat, 12 Jul 2008 15:03:46 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-75</guid>
		<description>Nishant -
Thanks for drawing attention to my Catalyst 2008 talk on the INCITS CS1.1 standards activity - RBAC Implementation and Interoperability.  I remember your question regarding the weaknesses in the RBAC model.  At the time I had about 45 seconds on the teleprompter and this was not going to provide a substantive answer to your remarks.
Have a look at SailPoint&#039;s Open Role Exchange forum
&lt;a href=&quot;http://openroleexchange.org/&quot; rel=&quot;nofollow&quot;&gt;http://openroleexchange.org/&lt;/a&gt;
which is a follow-on activity related to the CS1.1 work.  I also intend to address your comments about access control and relationships going forward.  My first take that this is in the context of &#039;functional vs. structural roles&#039;, an area highlighted in the CS1.1 draft and more fully developed in the HL7 RBAC research.
Cheers
Tim Weil
Vice Chair - INCITS CS1.1
&lt;a href=&quot;http://cs1.incits.org&quot; rel=&quot;nofollow&quot;&gt;http://cs1.incits.org&lt;/a&gt;
</description>
		<content:encoded><![CDATA[<p>Nishant -<br />
Thanks for drawing attention to my Catalyst 2008 talk on the INCITS CS1.1 standards activity &#8211; RBAC Implementation and Interoperability.  I remember your question regarding the weaknesses in the RBAC model.  At the time I had about 45 seconds on the teleprompter and this was not going to provide a substantive answer to your remarks.<br />
Have a look at SailPoint&#8217;s Open Role Exchange forum<br />
<a href="http://openroleexchange.org/" rel="nofollow">http://openroleexchange.org/</a><br />
which is a follow-on activity related to the CS1.1 work.  I also intend to address your comments about access control and relationships going forward.  My first take that this is in the context of &#8216;functional vs. structural roles&#8217;, an area highlighted in the CS1.1 draft and more fully developed in the HL7 RBAC research.<br />
Cheers<br />
Tim Weil<br />
Vice Chair &#8211; INCITS CS1.1<br />
<a href="http://cs1.incits.org" rel="nofollow">http://cs1.incits.org</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mat Hamlin</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-74</link>
		<dc:creator>Mat Hamlin</dc:creator>
		<pubDate>Fri, 11 Jul 2008 16:45:16 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-74</guid>
		<description>To what extent could these relationships be modeled in a standard?.. and is it enough.
Regardless of the depth of standardization of RBAC, there will still be ABAC definitions that will encompass Roles, Role Relationships and other attributes
In your scenario, is Patient Y in a particular Role that has a relationship with the Attending Doctor Role?  Or is it attribute based?  Role to Role relationships could be modeled, but real-time, logic based Role to attribute (or individual) relationships fall outside Role definition, IMO.
There are too many scenarios pertaining to the relationship of the two individuals (and the surrounding conditions).  What if Doctor X is not allowed to treat infants, and Patient Y is an infant.  Or what if Doctor X is a contractor and is not allowed to treat patients with a certain insurance? Or has this patient ever reported a complaint against this doctor? What if this data changes often?
Role to Role vs. Role to Individual vs. Individual to Individual...  Where do we draw the standardization line?
</description>
		<content:encoded><![CDATA[<p>To what extent could these relationships be modeled in a standard?.. and is it enough.<br />
Regardless of the depth of standardization of RBAC, there will still be ABAC definitions that will encompass Roles, Role Relationships and other attributes<br />
In your scenario, is Patient Y in a particular Role that has a relationship with the Attending Doctor Role?  Or is it attribute based?  Role to Role relationships could be modeled, but real-time, logic based Role to attribute (or individual) relationships fall outside Role definition, IMO.<br />
There are too many scenarios pertaining to the relationship of the two individuals (and the surrounding conditions).  What if Doctor X is not allowed to treat infants, and Patient Y is an infant.  Or what if Doctor X is a contractor and is not allowed to treat patients with a certain insurance? Or has this patient ever reported a complaint against this doctor? What if this data changes often?<br />
Role to Role vs. Role to Individual vs. Individual to Individual&#8230;  Where do we draw the standardization line?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ranjeet</title>
		<link>http://blog.talkingidentity.com/2008/07/my_next_attempt_at_controversy.html/comment-page-1#comment-73</link>
		<dc:creator>Ranjeet</dc:creator>
		<pubDate>Wed, 09 Jul 2008 23:14:24 +0000</pubDate>
		<guid isPermaLink="false">http://talkingidentity.com/blog/?p=114#comment-73</guid>
		<description>I assume that in Scenario B the user was Dr. K instead of Dr. X, all access would have automatically been granted.
</description>
		<content:encoded><![CDATA[<p>I assume that in Scenario B the user was Dr. K instead of Dr. X, all access would have automatically been granted.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
