<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Craig McMurtry's WebLog</title><link>http://blogs.msdn.com/craigmcmurtry/default.aspx</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>The Wacom Intuos 4 Tablet is terrific</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2009/10/18/the-wacom-intuos-4-tablet-is-terrific.aspx</link><pubDate>Sun, 18 Oct 2009 17:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9908801</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/9908801.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=9908801</wfw:commentRss><description>&lt;P&gt;I've been interested, recently, in improving my digital art skills from their current state of being entirely non-existent.&amp;nbsp; As a developer, I wish to be capable of doing more attractive user interfaces for applications I'm mocking up.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;As an initial project, I thought I would design cover art for my novel, &lt;EM&gt;Lady Sacrilege&lt;/EM&gt;.&amp;nbsp; I immediately found myself hampered, in that endeavor, by the quality of my graphics tablet, an inexpensive Genius tablet.&amp;nbsp; I'd been thinking about what to trade up to for several months actually.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Wacom thoroughly dominates the graphics tablet market, so naturally, my choice became a matter of deciding which Intuos tablet to buy.&amp;nbsp; I'd mulled over a Cintiq, because I thought that not being able to draw directly on the tablet surface, as one is accustomed to doing on paper, would always be an obstacle.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;What caused me to hesitate was less the price tag than the uncertainty of whether I could get it to work with my existing dual-monitor set-up, switching between the Cintiq and my existing second monitor with a switchbox.&amp;nbsp; Wacom's sales support was not positive that would work.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;On this past Friday, I finally made a decision and picked up an Intuos 4 medium tablet at Best Buy.&amp;nbsp; If you go looking for one there, you'll find the less expensive Bamboo models with Best Buy's Mac peripherals, and if you ask a staff member in the computer department whether they have the Intuos models in stock, he or she will likely tell you, as they told me, that the Intuos models are only available online.&amp;nbsp; Actually, a nice variety of Intuos tablets are to be found in the Best Buy's photography section, so one can indeed take one home right away if one wishes to do so.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Well, I found it to be a wonderful piece of equipment.&amp;nbsp; I immediately lost any sense of being limited by not being able to draw directly on the tablet surface.&amp;nbsp; The hand-eye coordination that I thought I would never develop was simply there.&amp;nbsp; The fact that my eye was not watching my hand was just not an issue anymore.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;That still doesn't mean I'm any good at digital artwork.&amp;nbsp; Of course not: I've only just started trying my hand at something for which I have little aptitude.&amp;nbsp; But what I'm still lacking is the artistic imagination and&amp;nbsp;enormous experience with graphic software that doing fine digital artwork requires.&amp;nbsp; The Intuos has entirely solved the input problem.&amp;nbsp; And even in the short time I've spent with it, I've already appreciated its incredible pressure sensitivity and even the tilt sensitivity that is unique to the Intuos line.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;As far as I'm concerned, then, the answer to the question of how one can draw using one's computer is "with an Intuos 4."&amp;nbsp; Thank you, Wacom, for producing a remarkable device.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Parenthetically, one gets to choose which bundled software one prefers.&amp;nbsp; I found that other Intuos users were recommending Corel's Sketch Pad.&amp;nbsp; Indeed, I'm very impressed with that software as well.&amp;nbsp; I printed out the pencil outline of the figure in my cover art on my color laser printer, and was delighted to see on the paper &lt;EM&gt;precisely&lt;/EM&gt; a pencil sketch--the textures were exactly what I would have produced with a lead pencil on the same paper.&amp;nbsp; And the Sketch Pad user interface is masterful: just perfect for navigation with a pen.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Here's the initial pencil sketch of Lady Sacrilege: &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG style="WIDTH: 427px; HEIGHT: 640px" title="Pencil Sketch of Lady Sacrilege" alt="Pencil Sketch of Lady Sacrilege" align=left src="http://www.cryptmaker.com/coverpencil.jpeg" width=427 height=640 mce_src="http://www.cryptmaker.com/coverpencil.jpeg"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I fixed her chest and slimmed her down when I inked the sketch: &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 427px; HEIGHT: 640px" title="Inked Sketch of Lady Sacrilege" alt="Inked Sketch of Lady Sacrilege" align=left src="http://www.cryptmaker.com/coverink.jpeg" width=427 height=640 mce_src="http://www.cryptmaker.com/coverink.jpeg"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And here is the finished cover concept, minus some touch-ups I'd like to make to the head, especially on the right side:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 373px; HEIGHT: 598px" title="Lady Sacrilege Cover Concept" alt="Lady Sacrilege Cover Concept" align=left src="http://www.cryptmaker.com/cover.png" width=373 height=598 mce_src="http://www.cryptmaker.com/cover.png"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9908801" width="1" height="1"&gt;</description></item><item><title>Microsoft Identity Lifecycle Manager "2:" Careful of how you use those question-and-answer gates</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/20/microsoft-identity-lifecycle-manager-2-careful-of-how-you-use-those-question-and-answer-gates.aspx</link><pubDate>Mon, 20 Oct 2008 15:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9007389</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/9007389.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=9007389</wfw:commentRss><description>&lt;P&gt;One of the features of Microsoft Identity Lifecycle Manager "2" is self-service password re-set.&amp;nbsp; That feature sits on top of a generic facility of the Microsoft Identity Lifecycle Manager service that provides for multi-factor authentication.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;To explain, one can define any number of&amp;nbsp;management policy rules in Microsoft Identity Lifecycle Manager "2," each of which may apply, according to your choice,&amp;nbsp;to a narrow or a broad a variety of operation that users may attempt to perform.&amp;nbsp; Among other things, those rules may specify whether additional confirmation of the user's identity is necessary before permitting them to perform the operation.&amp;nbsp; In Microsoft Identity Lifecycle Manager "2" that addtional confirmation will always be in addition to a Kerberos token identifying whoever it was that initiated the operation.&amp;nbsp; If additional confirmation is required, then the management policy rule will identify the definition of a authentication workflow that must complete successfully before the requested operation willbe allowed to proceed.&amp;nbsp; An authentication workflow will typically incorporate one or more activities for obtaining additional confirmation of the identity of whoever requested the operation, confirmation that could cover any number of authentication factors.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Microsoft Identity Lifecycle Manager "2" ships with one type of activity for corroborating identity: a question-and-answer activity.&amp;nbsp; If one was to use that activity as a means for corroborating the identity of someone attempting to re-set their password, then that activity would present questions to the user for which the user would have previously provided the answers, during the process of registering to use the password re-set facility.&amp;nbsp; So, for instance, the user might be confronted by any number of questions to confirm their identity, such as their mother's maiden name, the city of their birth, the make of their first car, and so on.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Now, as you may have read, a person was arrested last week for breaking into U.S. vice-presidential candidate Sarah Palin's Yahoo e-mail account.&amp;nbsp; He is accused, apparently,&amp;nbsp;of re-setting the password on the account, and publishling the new password on the Web, among other misdeeds.&amp;nbsp; The account's privacy was protected by&amp;nbsp;question-and-answer authentication gates.&amp;nbsp; The lesson here is that if you are public figure, especially one as a visible as a candidate for U.S. federal executive office, then one will be afforded precious little protection by question-and-answer gates.&amp;nbsp; While most people will not know the answers to even a few commonplace questions about your life and mine, unfortunately, if you are a candidate for high office in a democracy with a free press, then &lt;EM&gt;anybody&lt;/EM&gt; will be able to ascertain the answers to those same questions, in your case.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9007389" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Body of Lies</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/20/body-of-lies.aspx</link><pubDate>Mon, 20 Oct 2008 15:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9007368</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/9007368.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=9007368</wfw:commentRss><description>&lt;P&gt;I read a lot of spy fiction.&amp;nbsp; I have observed that the sociology of an espionage organization, as depicted, especially by Len Deighton, is very similar to that of a software development enterprise.&amp;nbsp; While I may expand on that observation in more detail here, at some point, suffice to say, now, that in both cases, there are people who go over the wall, as it were, and people who do not, and things only work well when those two groups function well together, and share the same priorties, and unfortunately, they often do not.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Anyhow, last weekend, while on what Bridget Jones referred to, in her famous diary, as a &lt;EM&gt;mini-break&lt;/EM&gt;, I read David Ignatious' spy novel, &lt;EM&gt;Body of Lies&lt;/EM&gt;.&amp;nbsp; The film version of that book opened in wide release across the United States last weekend as well, and the review I read in &lt;EM&gt;The Seattle Times&lt;/EM&gt; was not favorable, and the film did not perform very well at the box office.&amp;nbsp; I have not seen the film, but from the review, it is apparent that the character played by Russell Crowe has been adapted somewhat for the screen.&amp;nbsp; The reviewer also questioned whether there is room, in such a tale, for a romantic interest, which is odd to someone who had only read the book, because that romantic interest is the central plot element in the novel, the one that drives all the action toward its climax.&amp;nbsp; So the question of whether there is room for a romantic interest in the story is rather like asking whether there is room for the character of Teresa di Vicenzo in &lt;EM&gt;On Her Majesty's Secret Service.&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Regardless, as I say, I have not seen the movie, but the book is &lt;EM&gt;terrific&lt;/EM&gt;.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9007368" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Sociology/default.aspx">Sociology</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Some definitions you may find useful</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/20/microsoft-identity-lifecycle-manager-2-some-definitions-you-may-find-useful.aspx</link><pubDate>Mon, 20 Oct 2008 15:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9007340</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/9007340.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=9007340</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Requests&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;In the argot of Microsoft Identity Lifecycle Manager, a &lt;I style="mso-bidi-font-style: normal"&gt;request&lt;/I&gt; is a request to perform some operation on resource or on all or some of the attributes of a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The resource to which a request refers is generally known as the &lt;I style="mso-bidi-font-style: normal"&gt;target&lt;/I&gt; of the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Sets&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;A &lt;I style="mso-bidi-font-style: normal"&gt;set&lt;/I&gt; is a named collection of resources identified by a given filter expression, plus any resources that are added to the set regardless of whether or not those resources match the filter expression.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Resources that are added to a set regardless of whether they is identified by the set's filter expression, are referred to as &lt;I style="mso-bidi-font-style: normal"&gt;explicit members&lt;/I&gt; of the set, and the act of adding or removing such members is referred to as &lt;I style="mso-bidi-font-style: normal"&gt;explicitly adding&lt;/I&gt; or &lt;I style="mso-bidi-font-style: normal"&gt;explicitly removing&lt;/I&gt; a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Recursive Sets&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;Recursive sets&lt;/I&gt; are sets with recursive filter expression.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;A &lt;I style="mso-bidi-font-style: normal"&gt;recursive filter expression&lt;/I&gt; incorporates a secondary filter expression, and also names an attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The set includes every resource identified by the named attribute of any resource that is identified by the secondary filter expression, and it also includes every resource identified by the named attribute of any resource that is a member of the set.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The attribute named by the filter of a recursive set will be referred to, below, as the recursive set's &lt;I style="mso-bidi-font-style: normal"&gt;recursive attribute&lt;/I&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Set Membership Conditions&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;A set has membership conditions which are used to determine whether any given resource, in any given state, at any given point in time, belongs to the set.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Each membership condition consists of one or more statements, each of which must be true for the given resource, in its specified state, if the resource, in that state, is to satisfy the membership condition.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;A resource must satisfy at least one of the membership conditions of a set in order for it to be among those resources identified by the filter expression.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;Each statement of a membership condition is an assertion about the value of an attribute of a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Therefore, whenever an attribute of a resource is to be modified by a request, one can identify the membership condition statements that pertain to that attribute, and, thereby, identify the sets that the resource may join or leave as a result of the modification.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Management Policy Rules&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;Management policy rules stipulate who can request which changes to which resources.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;They also specify which workflows must be executed at which stage in the processing of a request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Request Evaluation&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;When a request is submitted, a representation of the request is created in the Microsoft Identity Lifecycle Manager data store.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Then the implications of the management policy rules for the request are determined.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;That step of determining the implications of the management policy rules for a request is generally referred to as &lt;I style="mso-bidi-font-style: normal"&gt;request evaluation&lt;/I&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;The management policy rules can have the following implications for a request: &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;1.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;They can grant the right for the request to be executed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;2.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;If no rule grants the right for the request to be executed, then the request is denied.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;3.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The rules can specify that certain authentication workflows must be completed before the request may be executed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;4.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The rules can specify that certain authorization workflows must be completed before the request may be executed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;5.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The rules can specify that once the request has been executed, certain action workflows must be executed on the target.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;6.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The rules can specify that once the request has been executed, certain action workflows must be executed on resources other than the target.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;An action that is to be performed on a resource as a result of a request is generally referred to as a &lt;I style="mso-bidi-font-style: normal"&gt;collateral action&lt;/I&gt; if the resource is not the target of the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The scope of a management policy rule is most commonly defined in terms of the set that the target of the request would join if the request was to be executed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, one might have a management policy rule that says that a certain action workflow is to be executed on the target of a request if the target will join the set of resources located at a certain address as a result of the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Consequently, in order to determine which management policy rules may apply to a request, it is necessary to ascertain which sets the target will join if the request were to be executed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since the request evaluation process must therefore determine at least some of the implications of the request on set membership, it has been given the task of calculating all of those implications.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;The Scope of Management Policy Rules&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Whether a management policy rule applies to a request depends on the scope of the rule.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The scope of the rule a rule is controlled by several attributes: &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;1.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ActionType attribute: this attribute identifies an operation that may be requested.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if the operation that is requested is one of those identified by the ActionType attribute of the rule.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;2.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ActionParameter attribute: this attribute identifies an attribute of a resource to which a modification may be requested.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if the attribute of a resource to which a modification is requested is one of those identified by the ActionParameter attribute of the rule.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;3.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The PrincipalSet attribute: this attribute of management policy rules identifies a set, and, other things being equal, a management policy rule applies to a request if the initiator of the request is a member of the set identified by the PrincipalSet attribute of the rule.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;4.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The PrincipalRelativeToResource attribute: this attribute of a management policy rule identifies an attribute of a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if it is true, for the target of the request, that the initiator of the request is identified by the value of the attribute specified by the rule's PrincipalRelativeToResource attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, if the value of the PrincipalRelativeToResource attribute is &lt;I style="mso-bidi-font-style: normal"&gt;Manager&lt;/I&gt; for a management policy rule, &lt;I style="mso-bidi-font-style: normal"&gt;X&lt;/I&gt;, then, other things being equal, the rule applies to any request that is initiated by a someone who is the manager of the target of the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If a management policy rule has a PrincipalRelativeToResource attribute, then it cannot also have a PrincipalSet attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;5.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ResourceCurrentSet attribute: this attribute of a management policy rule identifies a set.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if the target of the request currently belongs to the set identified by the management policy rule's ResourceCurrentSet attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;6.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ResourceCurrentRelativeToPrincipal attribute: this attribute of a management policy rule identifies an attribute of a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if it is true, for the initiator of the request, that the target of the request is identified by the value of the attribute specified by the rule's ResourceCurrentRelativeToPrincipal attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, if the value of the ResourceCurrentRelativeToPrincipal attribute is &lt;I style="mso-bidi-font-style: normal"&gt;Assistant&lt;/I&gt; for a management policy rule, &lt;I style="mso-bidi-font-style: normal"&gt;X&lt;/I&gt;, then, other things being equal, the rule applies to any request that is initiated by a someone whose assistant is the target of the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If a management policy rule has a ResourceCurrentRelativeToPrincipal attribute, then it cannot also have a ResourceCurrentSet attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;7.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ResourceFinalSet attribute: this attribute of a management policy rule identifies a set.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if, after the request has been processed, the target of the request will belong to the set identified by the management policy rule's ResourceCurrentSet attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo2"&gt;&lt;SPAN style="mso-fareast-font-family: 'Franklin Gothic Book'; mso-bidi-font-family: 'Franklin Gothic Book'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;8.&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;The ResourceFinalRelativeToPrincipal attribute: this attribute of a management policy rule identifies an attribute of a resource.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, a management policy rule applies to a request if it will be true, for the initiator of the request, after the request has been processed, that the target of the request is identified by the value of the attribute specified by the rule's ResourceFinalRelativeToPrincipal attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, if the value of the ResourceFinalRelativeToPrincipal attribute is &lt;I style="mso-bidi-font-style: normal"&gt;Assistant&lt;/I&gt; for a management policy rule, &lt;I style="mso-bidi-font-style: normal"&gt;X&lt;/I&gt;, then, other things being equal, the rule applies to any request that is initiated by someone who is requesting a modification to their own data to make someone else their assistant.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Other things being equal, the rule would also apply to any request that is initiated by someone whose current assistant is the target of the request, unless the request was to delete that resource, in which case, after the request has been processed, the target would no longer exist to be the assistant of the person who initiated the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If a management policy rule has a ResourceFinalRelativeToPrincipal attribute, then it cannot also have a ResourceFinalSet attribute.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.25in; mso-add-space: auto"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: center" align=center&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;Rights&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;If someone makes a request, and that request is permitted according to the management policy rules, then, in the Microsoft Identity Lifecycle Manager argot, that person has the right to make that request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However, even if a person has the right to make a request, the management policy rules may require that other people authorize the request.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In other words, the right to make a request is not always sufficient for the request to be authorized.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;FONT face="Franklin Gothic Book" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face="Franklin Gothic Book"&gt;If a management policy rule applies to a request and the value of that rule's optional GrantsRight parameter is 1, then that rule grants the right for some or all of the requested modifications to be made.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Specifically, the right is granted for the requested modifications to those attributes that are referred to by the ActionParameter attribute of the rule.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If the ActionParameter attribute of the management policy rule only refers to one attribute, but the request is to modify several attributes, then, unless other management policy rules permit the requested modifications to those other attributes, the request is denied.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9007340" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>A Fifteenth-Century Dilbert Cartoon</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/20/a-fifteenth-century-dilbert-cartoon.aspx</link><pubDate>Mon, 20 Oct 2008 15:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9007326</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/9007326.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=9007326</wfw:commentRss><description>&lt;P&gt;Reading Judith Barker's excellent &lt;EM&gt;Agincourt: Henry V and the Battle That Made England&lt;/EM&gt;, I came across what is, in effect, an early fifteenth-century &lt;EM&gt;Dilbert&lt;/EM&gt; cartoon.&amp;nbsp; Barker, in discussing the strategtic logistical planning for the Agincourt campaign, which Henry V of England undertook by invading France in the early 1400's, notes that gunpowder had been invented, and artillery had appeared on the battlefield.&amp;nbsp; Early cannons, she explains, were not only difficult to aim, being very heavy metal things with no mechanical means of orienting them, but also required considerable effort merely to fire.&amp;nbsp; The ammunition had to be loaded in the front, and a complicated, albeit primitive device, was used to get the gunpowder into the cannon.&amp;nbsp; Consequently--and this is the crucial fact--the typical artillery crew usually only managed to fire their weapon once during a battle.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Now there is a record of a particularly efficient gunner, who, in a battle, was able to fire no less than an amazing three shots from his cannon in the course of a fight.&amp;nbsp; Witnessing this feat, his commanders concluded that he could not have accomplished it were he not in league with the devil.&amp;nbsp; So the gunner was sent off an a pilgrimage to cure his soul.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9007326" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Sociology/default.aspx">Sociology</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" What is it about Canadians and identity?</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/01/microsoft-identity-lifecycle-manager-2-what-is-it-about-canadians-and-identity.aspx</link><pubDate>Wed, 01 Oct 2008 22:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8972251</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8972251.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8972251</wfw:commentRss><description>&lt;P&gt;A startling proportion of our team, including myself, are Canadians, either by birth, or, like me, by naturalization.&amp;nbsp; Also, two of the products that Microsoft purchased and are now incorporated into Microsoft Identity Lifecycle Manager "2"--the synchronization engine that used to be marketed by itself as Microsoft Identity Integration Server 2003, and the smart card management solution acquired from Alacris--were both developed by Canadian companies.&amp;nbsp; Alacris was based in the Canadian capital, Ottawa, which has always been a computer technology hub in that country--Corel is based there, and Cognos, among many other of the biggest software companies in the nation.&amp;nbsp; The synchronization engine,&amp;nbsp;my colleague Sorin Iftimie, another Canadian expatriate tells me, was born in Toronto.&amp;nbsp;&amp;nbsp;Anyhow, you can't toss a football down our corridors--as some folk have been known to do--without hitting at least a couple of hapless Canadians.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;So what is that all about?&amp;nbsp; Well, I recall that, at least when I was doing post-graduate studies in sociology at McMaster University in Hamilton, Ontario, Canada, in the late '80s and early '90s, there was much discussion about how Canadians lacked a common identity--anything substantive that they cherished together as Canadians, especially beliefs and aspirations.&amp;nbsp; A notion that was already well-established at the time was that whereas the United States of America had been a melting pot of immigrants who came from diverse backgrounds but ended up practicing the same culture, Canada was a mosaic.&amp;nbsp; At first glance, the largest distinct pieces of the mosaic would be English Canadians and French Canadians, but I believe it is true that among French-speaking Canadians, there are at least two distinct identities, that of the Quebecois, and that of the Acadians.&amp;nbsp; Frankly, among English-speaking Canadians, it really is hard to discern a common sense of identity among them at all, except perhaps that of being huddled in the cold North, away from "the Americans,"&amp;nbsp;and generally being open and accepting to everyone except pedophiles (or at least those that don't respond well to treatment).&amp;nbsp; Even an interest in ice hockey is not a given.&amp;nbsp; My wife, who&amp;nbsp;is a native-born east-coast Canadian, whose Canadian heritage extends further back than anyone in her family knows, has never watched a complete hockey game in her life--because hockey is just not a big deal where she comes from.&amp;nbsp; (Hunting is another matter, although she hasn't shot anything either, except perhaps me, a few times, in fond daydreams.)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Anyhow ... here we have a team focused on the problem of identity and a ridiculous preponderance of Canadians working on it--people who, historically and culturally, have none, and feel the lack of it.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8972251" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Why am I able to talk about it now?</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/01/microsoft-identity-lifecycle-manager-2-why-am-i-able-to-talk-about-it-now.aspx</link><pubDate>Wed, 01 Oct 2008 21:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8972058</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8972058.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8972058</wfw:commentRss><description>&lt;P&gt;That I am able to spend time blogging about Microsoft Identity Lifecycle Manager "2" has nothing to do with some scary marketing person suddenly declaring that we are allowed to talk about the product now, when we weren't able to before.&amp;nbsp; We've been public about the product in general, and most of its intended features since we annouced it at the RSA Conference in San Francisco in 2007.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Rather, I have had blogging time recently because we now have no less than 138 test applications&amp;nbsp;that have to be run before we can submit any code changes, and several of those test applications incorporate many individual tests--26 in the case of one of mine that I had occasion to spend a lot of time on over this past weekend.&amp;nbsp; As a result they take a while to run, during which time, I can, say, write a blog post.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Actually, our rule is that we have to run the tests on an essentially clean machine.&amp;nbsp; Such a machine does not have our source control client installed on it.&amp;nbsp; We copy over the binaries from our development machines, (re-)install the product, copy over the test sources, and run the tests.&amp;nbsp; When we are at that stage of testing, obviously, we can be more productive during the test runs, working on our development machines while the tests proceed on the clean machines.&amp;nbsp; However, especially in the case of more complex changes, it is generally a good idea to run the tests, or at least the most pertinent subset of them, through on our development machines first, where we have more facilities for debugging if any of the tests fail.&amp;nbsp; That's what's happening as I'm typing this entry--a large subset of the tests are ticking over on my development machine.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Naturally, now that we are approaching the completion of our release candidate, nothing is more important than avoiding regressions.&amp;nbsp; So the development team has to take particular care not to introduce any new defects, and to endeavor to catch any issues before the next daily build goes to the test team.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Most of the developers are currently in the state of what we call "Zero Bug Bounce," or ZBB, which is reached when your list of bugs for the current release drops to zero.&amp;nbsp; Inevitably, one is going to "bounce" up again as the test pass identifies more issues, but the idea is that once one has hit ZBB, the duration of each bounce will be briefer, and that bounces will soon be stopping.&amp;nbsp; I hit ZBB myself for this milestone on Monday morning, then identified 4 new issues myself during the course of yesterday, plus one that got added by a test team member this morning.&amp;nbsp; So my bug count is currently sitting at 5.&amp;nbsp; I have made all the fixes, and I am waiting on the outcome of the aforementioned tests before distributing the changes for code review, and running the full suite of tests on my clean machine.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8972058" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" The Policy User Interface</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/01/microsoft-identity-lifecycle-manager-2-the-policy-user-interface.aspx</link><pubDate>Wed, 01 Oct 2008 19:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8971860</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8971860.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8971860</wfw:commentRss><description>&lt;P&gt;&lt;A class="" href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifeycycle-manager-2-policies.aspx" mce_href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifeycycle-manager-2-policies.aspx"&gt;A previous post&lt;/A&gt; introduced you to Microsoft Identity Lifecycle Manager "2"'s concept of policy.&amp;nbsp; We provide a user interface for managing and creating policies.&amp;nbsp; Here are some screenshots stepping through the process of creating a policy to allow users to read any information about themselves (which may or may not be a policy that you would want to create).&amp;nbsp; &lt;/P&gt;
&lt;P&gt;This shows the list of all policies: &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policylist.gif" width=1604 mce_src="http://www.cryptmaker.com/policylist.gif"&gt;&lt;/P&gt;
&lt;P&gt;The&amp;nbsp;first page of the policy wizard is shown here.&amp;nbsp; On this page, one gives one's policy a name, and indicates whether or&amp;nbsp;not&amp;nbsp;this will be a policy that grants&amp;nbsp;permissions: &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policywizard1.gif" width=1604 mce_src="http://www.cryptmaker.com/policywizard1.gif"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;On this page, I have indicated that I want to create a policy that applies to all full-time employees.&amp;nbsp; That is, to everyone in the set of full-time employees.&amp;nbsp; I have also said that my policy defines what those folk can read.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policywizard2.gif" width=1604 mce_src="http://www.cryptmaker.com/policywizard2.gif"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;On this page, I express the idea that my policy allows full-time employees to read information &lt;EM&gt;about themselves&lt;/EM&gt;, and I choose to say that I am allowing them to read &lt;EM&gt;any information&lt;/EM&gt; about themselves, and not just the information contained in specific attributes: &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policywizard3.gif" width=1604 mce_src="http://www.cryptmaker.com/policywizard3.gif"&gt;&lt;/P&gt;
&lt;P&gt;This next page would allow me to trigger the execution of Windows Workflow Foundation workflows in response to requests covered by my policy: &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policywizard4.gif" width=1604 mce_src="http://www.cryptmaker.com/policywizard4.gif"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The last page of the wizard summarizes the new policy that I am about to submit: &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 src="http://www.cryptmaker.com/policywizard5.gif" width=1604 mce_src="http://www.cryptmaker.com/policywizard5.gif"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8971860" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>"EasyCoded.com is a pathetic intellectual property-squat."</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/10/01/easycoded-com-is-a-pathetic-intellectual-property-squat.aspx</link><pubDate>Wed, 01 Oct 2008 18:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8971792</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8971792.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8971792</wfw:commentRss><description>Ping that back.&amp;nbsp; &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8971792" width="1" height="1"&gt;</description></item><item><title>Goldfrapp at the Seattle Showbox SODO</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/30/goldfrapp-at-the-seattle-showbox-sodo.aspx</link><pubDate>Tue, 30 Sep 2008 19:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8970477</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8970477.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8970477</wfw:commentRss><description>&lt;P&gt;Goldfrapp played the Showbox SODO here in Seattle two weeks ago: their only general admission gig in North America on this leg of their tour.&amp;nbsp; I showed up at 4:30 to secure a spot in the front row when they came on at 10.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I'd like to thank the the folk at &lt;A class="" href="http://www.showboxonline.com/" mce_href="http://www.showboxonline.com/"&gt;the Showbox SODO&lt;/A&gt; for providing a great, welcoming venue for the fans.&amp;nbsp; My wife and I were able to hang out in their newly-renovated lounge with other fans before the show, and were treated to a rare performance of &lt;EM&gt;Black Cherry&lt;/EM&gt; during the sound-check, presumably as a rehearsal for the subsequent shows in Australia where that hallowed number was on the set list.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;It was terrific to meet other hardcore fans from &lt;A class="" href="http://www.goldfrapp.com/msgboard/index.php" mce_href="http://www.goldfrapp.com/msgboard/index.php"&gt;the Goldfrapp Message Board&lt;/A&gt;, which happens to be an unusually nice place to hang out on the 'net, so delightfully free of the vitriol that makes most other social gathering places on the Web a chafing bore.&amp;nbsp; Josh snapped this excellent shot of Alison, who clearly enjoyed performing as much as we all did watching.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 320px; HEIGHT: 229px" height=229 src="http://www.cryptmaker.com/goldfrapp/alison.jpg" width=320 mce_src="http://www.cryptmaker.com/goldfrapp/alison.jpg"&gt;&lt;/P&gt;
&lt;P&gt;I'd also like to give a shout out to another fellow fan, John Roger Schofield, who is the bassist for Seattle indie rock group, &lt;A class="" href="http://www.themyriad.net/index.php" mce_href="http://www.themyriad.net/index.php"&gt;The Myriad&lt;/A&gt;.&amp;nbsp; Give them a listen, too.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8970477" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Goldfrapp/default.aspx">Goldfrapp</category></item><item><title>Microsoft Identity Lifeycycle Manager "2:" Policies</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifeycycle-manager-2-policies.aspx</link><pubDate>Mon, 29 Sep 2008 23:18:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8969618</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8969618.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8969618</wfw:commentRss><description>&lt;P&gt;Now that I have explained that the concept of organizing things into sets is the most fundamental idea in Microsoft Identity Lifecycle Manager "2," I can tell you about a notion that builds upon it: management policy rules.&amp;nbsp; Now I have no idea why we use that wordy term, when the single word, &lt;EM&gt;policy&lt;/EM&gt;, would do just as well.&amp;nbsp; Perhaps it is because, in the ignominious tradition of such names as &lt;EM&gt;Windows Communication Foundation&lt;/EM&gt; and &lt;EM&gt;Windows Presentation Foundation&lt;/EM&gt;, we still believe that three words are better than one&amp;nbsp;despite P-Diddy and J-Lo having firmly established that barely one word will usually&amp;nbsp;do better than two.&amp;nbsp; Anyhow, when we say, &lt;EM&gt;management policy rule&lt;/EM&gt;, grit your teeth and think of &lt;EM&gt;policy&lt;/EM&gt;.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;A management policy rule is one of the various types of objects that is included by default in Microsoft Identity Lifecycle Manager "2."&amp;nbsp; Like any other type of object, it has attributes.&amp;nbsp; In particular, thanks to my colleague, Jack Kabat, who figured out how to make policies work, management policy rules have&amp;nbsp;these attributes, among others: &lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Principal Set&lt;/LI&gt;
&lt;LI&gt;Action Type&lt;/LI&gt;
&lt;LI&gt;Action Parameter&lt;/LI&gt;
&lt;LI&gt;Resource Current Set&lt;/LI&gt;
&lt;LI&gt;Resource Final Set&lt;/LI&gt;
&lt;LI&gt;Grant Right&lt;/LI&gt;
&lt;LI&gt;Authentication Workflow Definition&lt;/LI&gt;
&lt;LI&gt;Authorization Workflow Definition&lt;/LI&gt;
&lt;LI&gt;Action Workflow Definition&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;You will note that the term &lt;EM&gt;set&lt;/EM&gt; appears several times in this list of attributes, which is why I need to introduce that concept before moving on to this topic.&amp;nbsp; Together, these attributes define whether a request by someone to do something to an object is permissable, and, if it is permissable, what its consequences might be.&amp;nbsp; How do those attributes accomplish that?&amp;nbsp; &lt;/P&gt;
&lt;P&gt;If you want to say what a particular set of users is allowed to do, or what the consequences of their actions might be, then you use the&amp;nbsp;Principal Set attribute to identify that set of users.&amp;nbsp; Every policy rule must define a set of principals, even if that is the built-in set of all objects, or the built-in set of all people.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The action type parameter specifies what action requested by a principal set is covered by the policy.&amp;nbsp; Multiple actions might be identified.&amp;nbsp; The possible actions are &lt;EM&gt;Create&lt;/EM&gt;, &lt;EM&gt;Delete&lt;/EM&gt;, &lt;EM&gt;Read&lt;/EM&gt;, &lt;EM&gt;Add&lt;/EM&gt;, &lt;EM&gt;Remove&lt;/EM&gt;, and&amp;nbsp;&lt;EM&gt;Modify&lt;/EM&gt;, those being all of the things that one is allowed to do to an object, or an attribute of an object.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The action parameter attribute of a policy is a list of the attributes to be modified by a request covered by the policy.&amp;nbsp; For example, if a policy has, as its principal set, everyone that reports to Henry, has &lt;EM&gt;Read&lt;/EM&gt; as its action parameter, and &lt;EM&gt;Title and Salary&lt;/EM&gt; as the value of the action parameter attribute, then it is a policy that says whether or not everyone that reports to Henry and read the title and salary attributes of certain objects.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The resource current set attribute identifies the set of objects that the set of principals might be requesting to perfom some operation upon.&amp;nbsp; So, if I want to say that everyone who reports to Henry have the right to delete everyone who reports to Anne, then I express that in a policy that has the set of people who report to Henry as the principal set, and the set of people who report to Anne as the resource current set.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Now, when a request to perform some operation on an object is actually executed, that may result in the object joining or leaving a set.&amp;nbsp; For example, if Joe reports to Anne, and Henry requests that Joe's manager attribute be changed from &lt;EM&gt;Anne&lt;/EM&gt; to &lt;EM&gt;Peter&lt;/EM&gt;, then Joe will leave the set of people who report to Anne when the request is executed, and join the set of people who report to Peter.&amp;nbsp; Thus, for that request, the resource final set would be the set of people who report to Peter.&amp;nbsp; The resource final set attribute of a policy allows one to say what may or may not be permitted depending on what the consequences might be.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The Grant Right attribute of a policy indicates whether, if this policy applies to a request, the policy grants the right for the request to be executed.&amp;nbsp; This attribute allows us to have one policy that applies to the request that permits it, by virtue of having the Grant Right attribute set to &lt;EM&gt;true&lt;/EM&gt;, and another&amp;nbsp;policy that also applies to the request, but only defines the consequences that follow from the request being executed.&amp;nbsp; The latter&amp;nbsp;policy would have the Grant Right attribute set to &lt;EM&gt;false&lt;/EM&gt;.&amp;nbsp; Such a policy would not prohibit a request to which it applied, but in order for that request to be permitted, at least one other applicable policy would have to grant permission for the request to be executed.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The Authentication, Authorization and Action workflow definition attributes of a policy identify Windows Workflow Foundation workflow definitions that must be executed in response a request, if the request is permitted.&amp;nbsp; &lt;EM&gt;Authentication&lt;/EM&gt;, &lt;EM&gt;Authorization&lt;/EM&gt;, and &lt;EM&gt;Action&lt;/EM&gt; are the three phases of the Microsoft Identity Lifecycle Manager "2" request processing model.&amp;nbsp; That processing model will be the subject of an upcoming post.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8969618" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Sets, the easy way</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets-the-easy-way.aspx</link><pubDate>Mon, 29 Sep 2008 22:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8969381</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8969381.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8969381</wfw:commentRss><description>&lt;P&gt;In &lt;A class="" href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets.aspx" mce_href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets.aspx"&gt;an earlier post&lt;/A&gt;, I explained the crucial concept of organizing things into sets, in Microsoft Identity Lifecycle Manager "2."&amp;nbsp; I wrote that sets are collections of things that match some criterion, expressed in an XPath expression.&amp;nbsp; Well, because Microsoft Identity Lifecycle Manager "2" is meant to be used by anyone in an organization, we naturally don't require folk to have a knowledge of XPath in order to define a set.&amp;nbsp; Consequently, we have provided a tool called the "Filter Builder," which provides a friendly user interface by which one can craft a filter, either to use in query, or to use in defining a set.&amp;nbsp; I wrote the Filter Builder, as a matter of fact, from an excellent specification by my most excellent colleague, &lt;A class="" href="http://blogs.technet.com/doittoit/default.aspx" mce_href="http://blogs.technet.com/doittoit/default.aspx"&gt;Bobby Gill&lt;/A&gt;.&amp;nbsp; Come to think of it, I also wrote the initial specification of the XPath dialect that is generated by the Filter Builder, under the covers.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Here is a screenshot of the Filter Builder: &lt;/P&gt;
&lt;P&gt;&lt;IMG title='Microsoft Identity Lifecycle Manager "2" Filter Builder' style="WIDTH: 1604px; HEIGHT: 1200px" height=1200 alt='Microsoft Identity Lifecycle Manager "2" Filter Builder' src="http://www.cryptmaker.com/filterbuilder.gif" width=1604 mce_src="http://www.cryptmaker.com/filterbuilder.gif"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8969381" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Here's what I'm talking about 2</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-here-s-what-i-m-talking-about-2.aspx</link><pubDate>Mon, 29 Sep 2008 22:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8969374</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8969374.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8969374</wfw:commentRss><description>&lt;P&gt;Here is the schema administration page that I mentioned in &lt;A class="" href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets.aspx" mce_href="http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets.aspx"&gt;an earlier post&lt;/A&gt;: &lt;/P&gt;
&lt;P&gt;&lt;IMG title='Microsoft Identity Lifecycle Manager "2" Schema Management Page' style="WIDTH: 1604px; HEIGHT: 1200px" height=1200 alt='Microsoft Identity Lifecycle Manager "2" Schema Management Page' src="http://www.cryptmaker.com/schemamanagement.gif" width=1604 mce_src="http://www.cryptmaker.com/schemamanagement.gif"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8969374" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Here's what I'm talking about</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-here-s-what-i-m-talking-about.aspx</link><pubDate>Mon, 29 Sep 2008 22:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8969357</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8969357.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8969357</wfw:commentRss><description>&lt;P&gt;Here is a screenshot of the Microsoft Identity Lifecycle Manager "2" home page: &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG title='Micorsoft Identity Lifecycle Manager "2" Home Page' style="WIDTH: 1604px; HEIGHT: 1176px" height=1176 alt='Micorsoft Identity Lifecycle Manager "2" Home Page' src="http://www.cryptmaker.com/homepage.gif" width=1604 align=top mce_src="http://www.cryptmaker.com/homepage.gif"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8969357" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item><item><title>Microsoft Identity Lifecycle Manager "2:" Sets</title><link>http://blogs.msdn.com/craigmcmurtry/archive/2008/09/29/microsoft-identity-lifecycle-manager-2-sets.aspx</link><pubDate>Mon, 29 Sep 2008 18:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8969190</guid><dc:creator>CraigMcMurtry</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/craigmcmurtry/comments/8969190.aspx</comments><wfw:commentRss>http://blogs.msdn.com/craigmcmurtry/commentrss.aspx?PostID=8969190</wfw:commentRss><description>&lt;P&gt;The concept of organizing things into sets is the most fundamental idea behind Microsoft Identity Lifecycle Manager "2."&amp;nbsp; Our Group Program Manager, Alex Weinert, had listened to the requirements our customers had expressed for a self-service update to Microsoft Identity Integration Server 2003, and found that he was able to translate all those requirements into a common, simple language, using the notion of sets.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;For example, Alex heard customers say that they needed people to be able to update their own contact information, but needed the administrators of their organization to be able to update office locations and cost centers, but the latter only with approval from the general manager.&amp;nbsp; And he heard customers say that people needed to be able to re-set their own passwords, but that the identity checks to be performed would have to depend on that user's level of access.&amp;nbsp; And so on.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Alex wanted to generalize customer's specific requirements.&amp;nbsp; More importantly, he wanted to be able to describe a &lt;EM&gt;system&lt;/EM&gt; that we could build that could be &lt;EM&gt;configured&lt;/EM&gt; to produce all of the various outcomes that our customers wanted.&amp;nbsp; Microsoft Identity Lifecycle Manager "2" is the implementation of that very general system that he conceived in the fall of 2006, a system that is so general, in fact, that the management of identity information is merely one application of it, and far from the most interesting one.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Parenthetically, I had worked with Alex periodically over the preceding two years.&amp;nbsp; He was a lead program manager on the Windows Communication Foundation team, when I was the technical evangelist for that technology.&amp;nbsp; Alex had been responsible for what I considered to be the most valuable and interesting part of the Windows Communication Foundation: the management facilities.&amp;nbsp; Those&amp;nbsp;features of the technology&amp;nbsp;were the only things that Microsoft was producing at the time, I thought, that were&amp;nbsp;even approaching&amp;nbsp;what the market was demanding in terms of&amp;nbsp;tools for implementing a a service-oriented architecture.&amp;nbsp; So I knew that Alex was a very clever guy.&amp;nbsp; I didn't know that he was going to accomplish by far the most ingenious feat that I have witnessed close at hand.&amp;nbsp; When I was the software vendor developer evanagelist for Microsoft Canada, the very best part of my job was learning about the brilliant ideas that Canadian software vendors had implemented as products.&amp;nbsp; But still I was blown away by Alex's accomplishment.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;At the beginning of October 2006, we had a very long list of disparate requirements, and a long list of equally disparate features by which we were planning to meet those requirements.&amp;nbsp; We even had mock-ups of the Web and Outlook user interfaces for the features.&amp;nbsp; However, all we had done to factor out common principles, really, was identify a set of common controls, and, as the months went by, it would turn out that we hadn't done a particularly good job of that.&amp;nbsp; Then Alex took a trip to Shanghai, were some of our team's developers are located, and the plane ride turned out to extraordinarily productive.&amp;nbsp; He convened a meeting when he returned in which he presented the "Core Conceptual Model" for Microsoft Identity Lifecycle Manager "2," by which he was able translate the disparate list of customer requirements into a simple set of general processing requirements--into the description of a core platform, a machine,&amp;nbsp;that would address all of those customer&amp;nbsp;requirements as configurable consequence.&amp;nbsp; In the course of that meeting, we went from having a bag of features to address a long list of requirements, to having a description of a machine that we would build that would yield the necessary features, and address the&amp;nbsp;requirements.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Having a simple conceptual model for our product was an important, albeit implicit goal for us.&amp;nbsp; If you are familiar with Microsoft Identity Integration Server 2003, then you will know that, conceptually, it is, frankly, a mess.&amp;nbsp; Not only is the most expensive product in Microsoft's inventory, it is also by far the most complicated to understand.&amp;nbsp; Everyone wanted Microsoft Identity Lifecycle Manager "2" to be easier to grasp, especially because it was meant to be used by everyone in an organization--not just administrators.&amp;nbsp; Alex's conceptual model had the important virtue of being quite simple.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;And at the heart of that conceptual model was the idea of organizing things into sets.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;A set is simply a collection of things that match some criteria for membership.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;Now that is pretty straightforward, right?&amp;nbsp; I mean, I think I learned about sets in the second grade, because, at least in early '70's, educators had the idea that teaching kids about sets was somehow a prerequisite for teaching them mathematics.&amp;nbsp; That may still be the idea--I wouldn't know, since I don't have children, and have not even spoken to a kid, come to think of it, in about 10 years.&amp;nbsp; (Although my wife thinks she's married to one, but I digress.)&amp;nbsp; &lt;/P&gt;
&lt;P&gt;And that simple idea of sets gives us a systematic way of expressing ideas like "administrators can do this, but ordinary users can't" and "the office administrator of a group can update the cost center of people who report to that administrator's boss."&amp;nbsp; Those ideas can be expressed, more generally, by saying, "Members of Set A can X to things in Set B."&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;Well, wow!&amp;nbsp; Did we ever have fights over that idea.&amp;nbsp; Some folk thought that we'd never figure out how to implement it--and it did take more than a year to really figure that out.&amp;nbsp; And we also had battles over how the criteria for set membership were to be expressed.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;In the end, we have been able to support defining the criteria for set membership using XPath.&amp;nbsp; More generally, any query&amp;nbsp;of&amp;nbsp;Microsoft Identity Lifecycle Manager "2" must be expressed in a supported filter dialect, and the only dialect we will support in&amp;nbsp;Microsoft Identity Lifecycle Manager "2"&amp;nbsp;is a&amp;nbsp;variant of&amp;nbsp;XPath 2.0, and criteria for set membership are simply instances of queries.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;The variant of XPath 2.0 that we support incorporates a generous subset of the syntax of XPath 2.0, along with a few functions that we have added.&amp;nbsp; The most important limitations of our XPath dialect&amp;nbsp;are that we only support absolute location paths, and&amp;nbsp;only the first location step can have a predicate, as in &lt;EM&gt;/Person[DisplayName='Craig']&lt;/EM&gt;, where &lt;EM&gt;/Person&lt;/EM&gt; is the&amp;nbsp;first location step, and &lt;EM&gt;[DisplayName='Craig']&lt;/EM&gt; is the predicate.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;Typically, you would use XPath expressions like these to query Microsoft Identity Lifecycle Manager 2, or to define sets: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/X&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/X[A='s']&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/X[(A='s') or (B='t')]&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/X[(A='s' and /Y[B='t']/C]&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;In these expressions, &lt;EM&gt;X&lt;/EM&gt; and &lt;EM&gt;Y&lt;/EM&gt; each refer to a particular kind of things stored in Microsoft Identity Lifecycle Manager "2," like a&amp;nbsp;Person or a&amp;nbsp;Group.&amp;nbsp; &lt;EM&gt;A&lt;/EM&gt;, &lt;EM&gt;B&lt;/EM&gt;, and &lt;EM&gt;C&lt;/EM&gt; each refer to an attribute of a thing, and &lt;EM&gt;s&lt;/EM&gt; and &lt;EM&gt;t&lt;/EM&gt; refer to values of those attributes.&amp;nbsp; Thus, more expressive examples of queries and&amp;nbsp;set definitions&amp;nbsp;might be these: &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;EM&gt;/Person&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/Person[DisplayName='s']&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/Person[(DisplayName='s') or (CostCenter='t')]&lt;/EM&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;/Person[(CostCenter='s' and /Group[DisplayName='Joe's Staff']/ComputedMember]&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;Some&amp;nbsp;types of objects and their attributes&amp;nbsp;are included by default--like the &lt;EM&gt;Person&lt;/EM&gt; and &lt;EM&gt;Group&lt;/EM&gt; object types, as well as the &lt;EM&gt;Set&lt;/EM&gt; object type.&amp;nbsp; All types of objects have some attributes, like the &lt;EM&gt;DisplayName&lt;/EM&gt; attribute, and each type of object has some unique attributes, such as the &lt;EM&gt;FirstName&lt;/EM&gt; attribute of the &lt;EM&gt;Person&lt;/EM&gt; type.&amp;nbsp; However--and this is a very powerful feature of the product--you can add your own types of objects, and you can add your own attributes, and associate those attributes with various object types.&amp;nbsp; With some restrictions, you can even modify the attributes of the built-in object types.&amp;nbsp; For example, you can add attributes that you define to the &lt;EM&gt;Person&lt;/EM&gt; and &lt;EM&gt;Group&lt;/EM&gt; object types.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;How do you know what kinds of objects may be referenced in an XPath expression, and which attributes a given type of object has?&amp;nbsp; Well, there are two ways of doing that.&amp;nbsp; As an administrator of Microsoft Identity Lifecycle Manager "2" installation, you can follow the &lt;EM&gt;Schema Management&lt;/EM&gt; link on the home page.&amp;nbsp; Or as any user who happens to know how to use the Windows Communication Foundation, you can ask the Microsoft Identity Lifecycle Manager "2" service for its metadata.&amp;nbsp; The metadata will include the definition of all of the types of objects and the attributes associated with them, that are currently defined in the system.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;More details to follow ... &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8969190" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/craigmcmurtry/archive/tags/Identity+Management/default.aspx">Identity Management</category></item></channel></rss>