<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.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>Windows Server Customer Engineering : Identity and Access Control</title><link>http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx</link><description>Tags: Identity and Access Control</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Using the FREE network security tools you get in Windows (and who doesn't love free tools?)</title><link>http://blogs.technet.com/wincat/archive/2009/02/19/using-the-free-network-security-tools-you-get-in-windows-and-who-doesn-t-love-free-tools.aspx</link><pubDate>Fri, 20 Feb 2009 01:42:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3204733</guid><dc:creator>pfetty</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/wincat/comments/3204733.aspx</comments><wfw:commentRss>http://blogs.technet.com/wincat/commentrss.aspx?PostID=3204733</wfw:commentRss><wfw:comment>http://blogs.technet.com/wincat/rsscomments.aspx?PostID=3204733</wfw:comment><description>&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;In my last post I talked extensively about the use of 802.1x for network authentication (wired or wireless) and talked about the benefits of the 2 common approaches to controlling machine access (VLAN vs. Port ACL).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;While 802.1x remains a very popular mechanism for controlling port based access for machines coming onto the network, it also has some significant requirements associated with it, primarily, having 802.1x capable switches and/or access points in place today.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You would be surprised how many people think that their devices support this capability, but in reality, they may find that this is not the case.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;What this means is that if your hardware vendor tells you that what you have isn't 802.1x capable, be prepared for some sticker shock when you find out how much it will cost for an upgrade!&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Given the state of IT budgets today, doing a massive hardware upgrade is probably not something you are prepared to do now, or any time in the near future.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;That being said, you still have the requirement of securing the endpoints that are on your network and ensuring that they are kept up to date with patches, AV signatures, Anti-Malware Definitions etc.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;These 2 efforts may seem to conflict, but they certainly don't have to.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Let me introduce you to Server and Domain Isolation (SDI) with IPsec, all built into Windows, all free of charge!&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Now, as to not sound like a late night infomercial peddler of dodgy wares, I will explain what I mean by "free of charge".&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;What this means is that if you have purchased Windows Server (any SKU or version) and a Windows Desktop OS (Windows 2000 or later) and an associated Client Access License (CAL) (you usually purchase a CAL when you buy a server from Microsoft), these technologies do not have any additional licensing requirements whatsoever.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Now that we have the cost definition out of the way, let's talk about what these technologies can do for you.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 14pt; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;Server and Domain Isolation (SDI)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Simply put, SDI utilizes the IPsec (Internet Protocol Security) technologies that have existed in Windows ever since the days of Windows 2000.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;What SDI allows you to do is to create access policies based on Active Directory groupings that can require authentication between any set of machines in the network (or all machines).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The tools for creating and distributing these policies are also built into Windows and policies are distributed via the Group Policy mechanism, meaning that yes, a machine must be joined to the domain to easily &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;take advantage of SDI.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since we are talking machine and/or user authentication here, there are 2 options for credential use in SDI, they are X509 certificates, or a Kerberos ticket.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;There are advantages and disadvantages to the use of each of these credentials which I won't go into here, but the message is that there is flexibility here with both credentials being secure (i.e no passwords.)&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Now, let's talk about one big option that 802.1x cannot offer you, and that is data encryption.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Many customers have never really ever considered doing any kind of encryption on their network because they probably never understood how easy it is to implement.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Many think that there is some hardware requirement, or that their machines will come to a crawl performance wise, when in reality, neither are true.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Granted, you have the &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;option &lt;/I&gt;&lt;/B&gt;to create very stringent policies that require stronger encryption, but in many cases you simply won't need to do something like this, or may choose to bypass encryption all together.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 14pt; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;Example&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Here's a real world example of how SDI can be used:&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;The Microsoft network uses SDI technologies to protect our assets.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Pat Fetty (aka me) is a known and trusted employee and is allowed to access the network from his office, or remotely every day.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However, since Pat is not a Windows developer, pat is unable to access or &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;even see or ping &lt;/I&gt;&lt;/B&gt;our source code servers.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Pat is also unable to see things like our HR server, financial servers etc.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;How is that you ask, well, Pat is not in the proper security groups in AD to have the proper policy applied to him, or his machines, that allow this type of access.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Using this simple example, think of some of the other scenarios that you, or your customers may be faced with that you may be able to solve.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Here are some others I have come across in my job in the WinCAT team:&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;- Allow only doctors to see patient records, and encrypt all traffic going to and from those servers&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;- Allow only attorneys to be able to see servers X, Y and Z&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;- Encrypt all traffic to and from an ATM machine to the banks home offices&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;- Encrypt all Active Directory synchronizations between servers where traffic is going over the Internet&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;- Authenticate all traffic from my Windows machines, but exempt traffic from my main frame machines and all Macintosh machines (we'll talk a bit more about this)&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;This is just a small sample list of real business problems that are out there that SDI can help to solve.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Now, getting back to the last item regarding mainframes (let's just say all *ix) and Macs.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;There are Ipsec stack implementations available for these platforms, but I have personally not seem them work.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;As previously mentioned, the Microsoft SDI set of technologies are based 100% on public RFC's so there is no reason to expect that any implementation that is RFC compliant wouldn't work with any Windows machine.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;Another reason why this is important is because the tools to build and manage SDI policies allow you to create very simply policies to address this scenario.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For instance, you can have a policy that looks like this:&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;If you are a machine in group A, and you are capable of negotiating IPsec, then negotiate IPsec with a (Kerb ticket or cert)&lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;else&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Allow traffic to flow in the clear&lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;You may be asking yourself "what kind of security policy is that" and the answer is that it is one that doesn't disrupt the flow of traffic on the network, and yet will negotiate the security you dictate when possible.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is a very important concept since the reality is that your machines today are most likely not doing any kind of SDI today, so by having your policies based on AD group membership, and by having a "best effort" type of policy like this you can ease this type of technology into your network with little or no disruption!&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 14pt; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;SDI versus 802.1x&lt;/SPAN&gt;&lt;/U&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;We talked about this at the beginning and I think that SDI is the hands down winner here given that if you are a Windows environment&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;Deployment&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;To do 802.1x means you will have to touch all the switches and AP's in your network and configure them to do 1x on their ports, and to then send all traffic to a back end authentication server.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In many cases, the group that manages desktops and servers in your company is not the same group that manages the infrastructure, so you now are getting more people involved in the effort.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;SDI utilizes Group Policy and other built in tools to distribute policies and credentials, and the best part about this whole thing, is that SDI will work across whatever hardware you have in place today!&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;Management&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;This is a bit of a toss up, but I'd give SDI an edge since you can use a variety of methods to manage who is on the network accessing resources.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;802.1x usually requires an enterprise ready SNMP (Simple Network Management Protocol) solution either from our hardware vendor or from a third party&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;Security&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;This is the one that gets the networking guys feathers ruffled, but I give SDI the advantage here for a couple of reasons.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;First, SDI offers you the ability to encrypt traffic which is something that 1x cannot offer.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Second, in 802.1x, once you get passed the switch you are on the network doing what you please until you either reboot, or the switch kicks you off the port.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;SDI allows you to control the credential that is given to that client so that if for some reason you need to remove the client from the network, you can more quickly do so via SDI than 1x.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; mso-bidi-font-size: 11.0pt"&gt;Overall I feel that both technologies here offer up some nice benefits (we didn't even touch on Guest Access which I feel is better done with 802.1x than SDI), but in the end, you should evaluate what your business needs are and make your technology decision on that.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Usually the second phase of that decision process is cost, and that is where using the tools we have built into Windows can save you loads of money down the road assuming you plan on running Windows for the foreseeable future (which we hope that you are of course!)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin; mso-bidi-font-size: 11.0pt"&gt;With budgets shrinking and/or disappearing I would encourage everyone to take a look at what you have purchased in the Windows platform and ask Microsoft how to best utilize it because we are definitely here to help you get the most out of Windows!&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3204733" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/wincat/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx">Identity and Access Control</category><category domain="http://blogs.technet.com/wincat/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.technet.com/wincat/archive/tags/Longhorn/default.aspx">Longhorn</category><category domain="http://blogs.technet.com/wincat/archive/tags/network+security/default.aspx">network security</category><category domain="http://blogs.technet.com/wincat/archive/tags/802.1x/default.aspx">802.1x</category><category domain="http://blogs.technet.com/wincat/archive/tags/Ipsec/default.aspx">Ipsec</category><category domain="http://blogs.technet.com/wincat/archive/tags/network+access+protection/default.aspx">network access protection</category></item><item><title>We need our directory to replicate immediately!</title><link>http://blogs.technet.com/wincat/archive/2006/07/20/442727.aspx</link><pubDate>Fri, 21 Jul 2006 08:15:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:442727</guid><dc:creator>rdeluca</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.technet.com/wincat/comments/442727.aspx</comments><wfw:commentRss>http://blogs.technet.com/wincat/commentrss.aspx?PostID=442727</wfw:commentRss><wfw:comment>http://blogs.technet.com/wincat/rsscomments.aspx?PostID=442727</wfw:comment><description>&lt;P&gt;A customer of ours is in the process of evaluating Active Directory and ADAM for use as their primary enterprise application directory. I was just informed that they've dropped Active Directory from the running (it's not in their "top three" directory servers) because "AD replication is scheduled and not event driven". When pressed for more info, they gave the following points:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Event driven replication is perceived to be faster than scheduled replication&lt;/LI&gt;
&lt;LI&gt;AD replication is “pull” vs “push”&lt;/LI&gt;
&lt;LI&gt;AD can't do sub-second replication and they need it&lt;/LI&gt;
&lt;LI&gt;AD performance was great but running everything on one box means no redundancy&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;It sounds like their app doesn't handle replication latency very well. It expects to be able to read the same data it has written... and a multi-master replication system can cause problems with this. Perhaps their technique for dealing with latency is to wait until replication is complete? Some of the points above are easily refuted, but it leads to a much more interesting question. Let's start with the refuting part.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Event driven replication &lt;/STRONG&gt;- Change notification is on by default within a site and is effectively "event driven". The same behaviour can be turned on between sites as well.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Pull vs push &lt;/STRONG&gt;- Instead of pushing changes, we push a notification and the destination pulls the changes. Not much difference there.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Replication time &lt;/STRONG&gt;- We can reduce replication intervals to about 1 second, but this shouldn't be required if the app handles latency intelligently. Even with other directories, replication is best effort and isn't guaranteed... thus the app needs to handle latency or it will experience intermittent errors.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Perf, single server &lt;/STRONG&gt;- Running everything on one box solves the replication latency problem. Moreover, having a second server for redundancy won't necessarily cause a problem with latency, provided the app talks to the second box only when the first box has failed. Other customers have used this model because their third-party middleware solution doesn't handle latency.&lt;/P&gt;
&lt;P&gt;What became immediately apparent is that we need to do a better job of explaining how to deal with replication latency in a multi-master environment. I suspect that a lot of LDAP apps have been written without this in mind... some work, some don't, and many will exhibit intermittent errors given the right conditions.&lt;/P&gt;
&lt;P&gt;Here's a quote from Don Hacherl on a closely related topic. It sheds some light on why being latency-aware is important:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;You'll never see a meaningful urgent replication flag because AD exposes the X.500 data model in which reads from different servers can have different results.&amp;nbsp; If apps aren't prepared to deal with that then all you'll get is an infinite regression of "Well, Urgent wasn't fast enough and my app crashed again.&amp;nbsp; Can I have a Really Truly Super Duper Urgent setting?"&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;I can imagine an unreliable urgent mechanism (say, urgent changes are multicast out by the source), but even with that you'd still end up with temporary inconsistencies and an inability to offer QOS-like guaranties.&amp;nbsp; If a source server accepts an originating change while a destination server is flat out 100% CPU and I/O working to catch up on other replication (heck, say other urgent replication), what should happen?&amp;nbsp; You'll still end up with latency, and apps will still have to deal with it.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;BR&gt;Now what I consider the interesting question. What mechanisms are available to deal with replication latency?&lt;/P&gt;
&lt;P&gt;One approach is designating a master server for write operations and critical readbacks. Regular read operations would still hit any of the replicas. In the case of failure, one of the replicas can be quickly designated as the master. This model may require applications to handle reads, writes, and critical reads differently, because they may need to be routed to different replicas. A variation of this approach is to route writes/readbacks in a predictive way to multiple masters, effectively dividing ownership over writes accross multiple masters.&lt;/P&gt;
&lt;P&gt;Another approach is to ensure client affinity. There are variations on this model as well - affinity may be handled on a per-session or per-user basis by the application, or perhaps by a hardware or software load balancer. Multiple masters are still used, but each application session or client will communicate with a single master at a time. The decision on how to balance transactions safely across the available masters may need to be handled by the application.&lt;/P&gt;
&lt;P&gt;A third approach is to cache the directory data at the application level. This might get tricky, especially when dealing with web clients and application state... but it's certainly possible. The complexity of the caching layer may end up being too high to be practical.&lt;/P&gt;
&lt;P&gt;Personally, I think the first approach is the simplest to implement. The application logic is least complex and failover is relatively easy. There is still the potential for the loss of small number committed transactions, but this is a common problem in any multi-master LDAP system. I'm going to dig around a bit and find out how others handle the latency issue. Public and private comments are definitely welcome on this one.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=442727" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx">Identity and Access Control</category></item><item><title>More on multiple forests</title><link>http://blogs.technet.com/wincat/archive/2006/06/03/432484.aspx</link><pubDate>Sun, 04 Jun 2006 07:55:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:432484</guid><dc:creator>rdeluca</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/wincat/comments/432484.aspx</comments><wfw:commentRss>http://blogs.technet.com/wincat/commentrss.aspx?PostID=432484</wfw:commentRss><wfw:comment>http://blogs.technet.com/wincat/rsscomments.aspx?PostID=432484</wfw:comment><description>&lt;P&gt;I've received a few interesting email messages about my last post on multiple forests (&lt;A href="/wincat/archive/2006/05/23/429988.aspx"&gt;http://blogs.technet.com/wincat/archive/2006/05/23/429988.aspx&lt;/A&gt;).&lt;/P&gt;
&lt;P&gt;Here's a good excerpt from one of them, verbatim:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;“More forests equals more administrative tasks”.&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;I’d say that it necessarily must also be more complex administrative tasks.&amp;nbsp; It may not seem that way to folks that have been working with multiple forests or are very experienced, but the bottom line is that having another forest to work with means you must either: &lt;BR&gt;&amp;nbsp;&lt;BR&gt;a) You need to handle an arbitrary number of forests in code.&amp;nbsp; This code is thus longer and more complex than one that works against a single forest and AD namespace.&amp;nbsp; It may not be much more complex or longer, but it must be to some degree.&amp;nbsp; So now your administrative burden is increased (more code to write, more code to test and vet).&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;b) Have your scripts run only with one forest in mind and depend on the administrator to be able to keep track of the different forests and make changes as appropriate.&amp;nbsp; Holy bejesus.&amp;nbsp; Can you say operator error? &lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Which leads us to this:&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;“If you use scripting, the impact in a multi-forest environment is similar to the impact in single forest because the automated tasks will span all forests.”&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;But from above, if you use scripts to span multiple forests, I don’t think you can be at the same level of risk.&amp;nbsp; Either your scripts are more complex or your administrators must be.&amp;nbsp; Thus, best case scenario is a higher risk than a single forest.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;BR&gt;I also got a few "multiple forests work just fine for us, thank you very much" messages. I want to dig into that a bit more. I'm looking at the risk of multiple forests, not the overall suitability of them. Isolation from service administrators is still the right reason to move towards multiple forests. The risk issues I'm talking about should be used to decide if the isolation requirement is a true requirement or actually more of a preference. Let's look at some cases where multiple forests are effective at reducing risk.&lt;/P&gt;
&lt;P&gt;In my prior post, I described one of the scenarios where multiple forests work well - when every business function is covered by at least two forests. The downside is often an environment with significant cross-forest access and added complexity. Let me describe a good exception to this (albeit rare and expensive). I was reviewing a customer AD design with one of our infrastructure architects this week. The customer built two completely independent forests to support a mission-critical application. Half of the app servers are joined to one forest and half to the other. Redundancy is provided at the application level so everything keeps working seamlessly if half of the environment fails. With proper change management controls in place, this helps reduce overall risk. Scripting is still important to ensure adminstrators don't make accidents while making changes, but the impact of an error is limited because the app can run fine if one of the two forests disappears. The only missing piece here is forest recovery. A good forest recovery plan acts as a stop-loss measure, ensuring that the impact of a forest failure is capped at a known quantity. There's a lot to say about forest recovery so I'll save it for another post. &lt;/P&gt;
&lt;P&gt;Other multi-forest scenarios that makes sense from a risk perspective? Political reasons always rise to the top of my list. In some cases, a business unit may have no control over the quality of forest admins. Probability of failure is all about administrator error, so a business unit with strong admins might be better off with their own forest instead of relying on weaker admins from another part of the organization. In a perfect world, the strongest admins would run a big forest for the whole company. In reality, the strong admins set up a separate forest for their business unit. Not ideal, but sometimes realistic... especially if the business unit is more important that the others.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=432484" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx">Identity and Access Control</category></item><item><title>Myth debunking: "Multiple forests help us reduce the risk of a forest-wide Active Directory failure"</title><link>http://blogs.technet.com/wincat/archive/2006/05/23/429988.aspx</link><pubDate>Wed, 24 May 2006 08:25:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:429988</guid><dc:creator>rdeluca</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/wincat/comments/429988.aspx</comments><wfw:commentRss>http://blogs.technet.com/wincat/commentrss.aspx?PostID=429988</wfw:commentRss><wfw:comment>http://blogs.technet.com/wincat/rsscomments.aspx?PostID=429988</wfw:comment><description>&lt;P&gt;More and more customers seem to be using "lower risk" as justification for their multiple forest plan. It may seem reasonable at first glance, but something about it doesn't feel right to me. Since recognizing this pattern a couple of months ago, I've spent a lot of time mulling it over with numerous colleagues.&lt;/P&gt;
&lt;P&gt;The first question that pops to mind: how would you decide on the number of forests? Is the right number two? Five? Ten? Fifty? A failure that impacts 50% of your users is probably as bad from a business perspective as one impacting 100% of your users, especially if the forests are divided along business unit or geographic boundaries. Even a 10% outage could be catastrophic. This model could work if every business function were covered by at least two forests, but this would probably result in a complex, difficult-to-manage environment with significant cross-forest resource access.&lt;/P&gt;
&lt;P&gt;One of my customers recently proposed ten forests to reduce their risk of failure. Let's use this as an example and compare the ten forest approach to a single forest.&lt;/P&gt;
&lt;P&gt;A commonly used formula for quantifying risk is Probability x Impact = Exposure. In a single forest environment, the impact of a forest-wide failure is incredibly high. "Losing the forest" would mean downtime for practically everyone. I'm not sure exactly how to assign a dollar value to this. What I do know is the cost of a 10% partial outage (one of the ten forests) is higher than simply dividing the cost of a total outage by 10. If I had the choice between ten 10% outages and one 100% outage, I'd choose the latter. Based on my conversations with others, I estimate the cost of a partial outage to be 20%-40% of the full outage cost.&lt;/P&gt;
&lt;P&gt;What about the other side of the equation - probability? What would cause a forest outage? I'm assuming an enterprise environment with dozens of domain controllers, so hardware failures are out. Some sort of replicated corruption is a possibility, but it is extremely rare. It's so rare that I don't think an accurate probability of replicated corruption can be calculated. The lion's share of forest problems are a direct result of administrator error. What factors can affect the rate of administrator error?&lt;BR&gt;- Environment complexity&lt;BR&gt;- Administrative skill and experience&lt;BR&gt;- Adherence to testing processes&lt;BR&gt;- Automation vs. manual changes&lt;/P&gt;
&lt;P&gt;Given the close tie between forest failure and administrator error, I've come up with the following logic:&lt;/P&gt;
&lt;P&gt;- Scripting is goodness. It reduces administrative errors in production when coupled with a comprehensive testing process.&lt;BR&gt;- More forests equals more administrative tasks. You can either handle this with more administrators or more scripting.&lt;BR&gt;- If you use more administrators instead of more scripting, your probability of failure increases faster than the corresponding reduction in impact.&lt;BR&gt;- If you use scripting, the impact in a multi-forest environment is similar to the impact in single forest because the automated tasks will span all forests.&lt;/P&gt;
&lt;P&gt;And so we're back to square one. The multiple forest environment ends up being a riskier venture, or at best it results in the same risk as a well-managed single forest.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=429988" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx">Identity and Access Control</category></item><item><title>Time for an Active Directory Redesign?</title><link>http://blogs.technet.com/wincat/archive/2006/04/06/424452.aspx</link><pubDate>Thu, 06 Apr 2006 10:26:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:424452</guid><dc:creator>rdeluca</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/wincat/comments/424452.aspx</comments><wfw:commentRss>http://blogs.technet.com/wincat/commentrss.aspx?PostID=424452</wfw:commentRss><wfw:comment>http://blogs.technet.com/wincat/rsscomments.aspx?PostID=424452</wfw:comment><description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Hi all... I'm Robert DeLuca, the Identity Management guy on WinCAT.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;After a year or two of slowly dwindling requests for AD design reviews, there appears to be a growing trend among many of my enterprise customers - full Active Directory redesign. I guess 5 years of living with suboptimal AD designs (You have HOW MANY domains? Site-based group policy for WHAT? Firewalls WHERE?) leads to people wanting a fresh start. I generally don't like messing with things that aren't broken, but a lot of the big players are starting to recognize how much those suboptimal designs are costing them to operate. Extra DCs everywhere... problems supporting roaming laptops and users... difficulty keeping group policy consistent... the list goes on. Then there's the difficult-to-quantify impact on enterprise applications. What is the true cost of not having a stable, standardized corp-wide directory service for app developers to rely on? Redesign sure seems like a nice way out. Or maybe the AD guys are just bored and/or looking for job security? :) Either way, it's gaining traction with management and they often seem willing to swallow the costs of a major migration.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Is a fresh start really the correct way forward? The most important question is why the redesign is desired in the first place. What requirements will be addressed by the new system that weren't being addressed by the old one? I try to separate the operational issues from the true architecture/design issues. If the existing AD implementation is troublesome because of... let's call it a "lack of operational prowess"... building a new forest right beside it won't help unless the root cause of the problem is dealt with too. What seemed like a fresh start quickly ends up in the same operationally degraded state.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I typically recommend that customers go through an AD Risk Assessment (formerly known as an AD Health Check - talk to your Microsoft TAM for details) to help shake these problems from the tree. I'm tempted to make them mandatory before I'll dig into a major redesign effort. Why? Once the operational issues are out of the way, there's much more clarity. If there are still underlying issues related to the forest or domain structure, they can be mulled over without the added pressure of constant operational problems.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Back to the original question - time for a redesign? In reality, most of the troubled forests I see are fundamentally sound. Some customers do have broken designs, but in a vast majority of cases it makes more sense to leverage parts of the existing environment as the basis for the "new" environment instead of building anything from scratch. Granted, figuring out which parts to keep is often a challenging mix of technology, strategy, finances, and politics... but that's the fun part. If the trend holds, it looks like were going to see much better AD implementations in the years to come.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=424452" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/wincat/archive/tags/Identity+and+Access+Control/default.aspx">Identity and Access Control</category></item></channel></rss>