<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Dr. Z&amp;#39;s Blog</title><subtitle type="html" /><id>http://blogs.msdn.com/b/zwsong/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/b/zwsong/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2010-04-29T17:27:00Z</updated><entry><title>Where would you find ULS logs on Office Web Apps (OWA) 2013 server</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2013/04/16/where-would-you-find-uls-logs-on-office-web-apps-owa-2013-server.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2013/04/16/where-would-you-find-uls-logs-on-office-web-apps-owa-2013-server.aspx</id><published>2013-04-16T20:53:00Z</published><updated>2013-04-16T20:53:00Z</updated><content type="html">&lt;p&gt;For my own record as well: C:\ProgramData\Microsoft\OfficeWebApps\Data\Logs\ULS&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-22-86/2465.OWAULSLocation.JPG"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-22-86/2465.OWAULSLocation.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you do not see C:\ProgramData folder, you need to change your explorer's viewing option to "Show hidden files, folders and drives".&lt;/p&gt;
&lt;p&gt;Enjoy troubleshooting OWA!&lt;/p&gt;
&lt;p&gt;Zewei Song, Ph.D.&lt;br /&gt;Microsoft Certified Master: SharePoint 2010&lt;br /&gt;Microsoft Consulting Services&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10411622" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint 2013" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2013/" /><category term="Office Web Apps 2013" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Office+Web+Apps+2013/" /><category term="ULS" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/ULS/" /></entry><entry><title>Where Should You Store Your SharePoint Solution’s Configuration Data?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2012/03/27/where-should-you-store-your-sharepoint-solution-s-configuration-data.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2012/03/27/where-should-you-store-your-sharepoint-solution-s-configuration-data.aspx</id><published>2012-03-27T18:37:00Z</published><updated>2012-03-27T18:37:00Z</updated><content type="html">&lt;p&gt;This is a common scenario: you are designing a great SharePoint solution and you have some configuration information, such as URLs, connection strings, list names, and so on,&amp;nbsp;that you have to deal with. What should you do?&lt;/p&gt;
&lt;p&gt;The easiest and dirtiest way is hard-coding them in code. It maybe fine for a small and quick proof-of-concept but of cause you should not do it.&lt;/p&gt;
&lt;p&gt;Next place is application config file. In the case of SharePoint solutions, it is the web.config. Configuration data stored in web.config is not hard-coded, easy to change (who doesn't like NotePad?), and very easy to access from code.&lt;/p&gt;
&lt;p&gt;There are other places to store configuration data, SharePoint lists are also popular. The problem is that you have to store the lists&amp;rsquo; sites and names somewhere else, otherwise you code would not know where to get the data. An external data store, such as SQL server, is also being used at some customers. Similarly, you have to deal with the data connection information separately as SharePoint lists.&lt;/p&gt;
&lt;p&gt;However, in this blog I am going to recommend *NOT* to use any of the approaches mentioned above. To make my point, please check the comparison sheet below:&lt;/p&gt;
&lt;table style="width: 560px;" border="1" cellspacing="0" cellpadding="0"&gt;&lt;colgroup&gt;&lt;col width="167" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="118" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="162" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="66" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="124" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="167" /&gt;&lt;/colgroup&gt;&lt;colgroup&gt;&lt;col width="127" /&gt;&lt;/colgroup&gt;
&lt;tbody&gt;
&lt;tr height="20"&gt;
&lt;td class="xl63" height="20" width="167"&gt;&lt;strong&gt;Place&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="118"&gt;&lt;strong&gt;Location&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="162"&gt;&lt;strong&gt;Data Management Tools&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="66"&gt;&lt;strong&gt;Backup&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="124"&gt;&lt;strong&gt;Pros&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="167"&gt;&lt;strong&gt;Cons&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl63" width="127"&gt;&lt;strong&gt;Should you do this&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="20"&gt;
&lt;td class="xl63" height="20" width="167"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;GAC&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;Visual Studio&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Server&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;Easy&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;Dirty&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;HELL NO!&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="64"&gt;
&lt;td class="xl63" height="64" width="167"&gt;&lt;strong&gt;web.config&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;File system&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;Notepad and so on&amp;hellip;&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Server&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;Easy&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;Multiple copies, hard to sync. Requires to restart app pool when changed. Not being backed up&amp;nbsp;by&amp;nbsp;SQL&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="48"&gt;
&lt;td class="xl63" height="48" width="167"&gt;&lt;strong&gt;SharePoint List&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;Content database&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;SharePoint web UI&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Content db&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;Built-in UI, easy to manage&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;Have to store location data somewhere else. Too easy&amp;nbsp;to manipulate&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;Maybe&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="48"&gt;
&lt;td class="xl63" height="48" width="167"&gt;&lt;strong&gt;External&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Data Source&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;External data source&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;Custom&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Custom&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;You have full control&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;Have to store connection data somewhere else. Outside dependency.&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;Maybe not&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="48"&gt;
&lt;td class="xl63" height="48" width="167"&gt;&lt;strong&gt;Property Bag&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;Content database&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;Custom application page, utility&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Content db&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;Backed up&amp;nbsp;with content, on site and site collection&lt;br /&gt;&amp;nbsp; levels&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;No built-in UI, have to create your own management tool&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr height="48"&gt;
&lt;td class="xl63" height="48" width="167"&gt;&lt;strong&gt;Hierarchical&lt;/strong&gt;&lt;strong&gt;&amp;nbsp;Object Store&lt;/strong&gt;&lt;/td&gt;
&lt;td class="xl64" width="118"&gt;Config database&lt;/td&gt;
&lt;td class="xl64" width="162"&gt;Custom application page,&amp;nbsp;utility&lt;/td&gt;
&lt;td class="xl64" width="66"&gt;Config db&lt;/td&gt;
&lt;td class="xl64" width="124"&gt;Backed up&amp;nbsp;with config, on&lt;br /&gt;&amp;nbsp; farm and web app&amp;nbsp;levels&lt;/td&gt;
&lt;td class="xl64" width="167"&gt;No built-in UI, have to&amp;nbsp;create your own management tool&lt;/td&gt;
&lt;td class="xl64" width="127"&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;For storing configuration data for SharePoint solutions, I would like to recommend use either property bags or hierarchical object store, maybe together with SharePoint lists depends on the amount of data you are dealing with. Some people may argue that they do not have built-in UI, actually it&amp;nbsp;could be&amp;nbsp;a good thing in this case, because that means they are not likely to be altered by accident, and it is easier to control access.&lt;/p&gt;
&lt;p&gt;Below are some useful links on property bags, hierarchical object store, and application pages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Property bag:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.sppropertybag.aspx"&gt;http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.sppropertybag.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://pbs2010.codeplex.com/"&gt;http://pbs2010.codeplex.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Hierarchical object store:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.sppersistedobject.aspx"&gt;http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.sppersistedobject.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.chaholl.com/archive/2011/01/30/the-skinny-on-sppersistedobject-and-the-hierarchical-object-store-in.aspx"&gt;http://www.chaholl.com/archive/2011/01/30/the-skinny-on-sppersistedobject-and-the-hierarchical-object-store-in.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Application page:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee231581.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee231581.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;p&gt;What about farm level SharePoint solutions? For example one of my customers developed a solution to support their enterprise search, some other customers developed timer jobs. Those solutions are not deployed for a specific site, site collection or a web application. Where should they store the configuration data?&lt;/p&gt;
&lt;p&gt;The answer is to store the data in property bag in Central Admin or hierarchical object store, and deploy your application pages to CA. Here is an article about how to do it:&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Get CA's URL: &lt;a href="http://www.sytone.com/2010/07/getting-the-central-admin-url-for-a-farm-in-sharepoint/"&gt;http://www.sytone.com/2010/07/getting-the-central-admin-url-for-a-farm-in-sharepoint/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Deploy an app page to CA:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/ff798467.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff798467.aspx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Zewei Song, Ph.D.&lt;br /&gt;Microsoft Certified Master: SharePoint 2010&lt;br /&gt;Microsoft Consulting Services&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10288122" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="Application Page" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Application+Page/" /><category term="Configuration" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Configuration/" /></entry><entry><title>Dr. Z is Master Z now!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2012/03/25/you-can-call-dr-z-master-z-now.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2012/03/25/you-can-call-dr-z-master-z-now.aspx</id><published>2012-03-26T00:23:00Z</published><updated>2012-03-26T00:23:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-22-86/7563.MCM_2800_rgb_29005F00_1406.gif"&gt;&lt;img border="0" alt="" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-22-86/7563.MCM_2800_rgb_29005F00_1406.gif" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I officially became a Microsoft Certified Master for SharePoint Server 2010 on March 22, 2012.&lt;/p&gt;
&lt;p&gt;The journey began more than a year early. If you read my earlier blog (&lt;a href="http://blogs.msdn.com/b/zwsong/archive/2011/02/24/passed-all-4-sharepoint-2010-mcp-exams-at-techready.aspx"&gt;http://blogs.msdn.com/zwsong/archive/2011/02/24/passed-all-4-sharepoint-2010-mcp-exams-at-techready.aspx&lt;/a&gt;), you would know that I passed all 4 MCP exams for SharePoint 2010 in February 2011, and that was the hard pre-requisition for being accepted by MCM program.&lt;/p&gt;
&lt;p&gt;Around April and May 2011, I started to consider if I wanted to pursue a MCM certificate. An MCM or Master title not only is the second highest Microsoft certificate (there is a higher MCA title for enterprise architects), but also highly respected by the whole industry.&lt;/p&gt;
&lt;p&gt;However, MCM is not easy, actually it is very hard, time consuming and expensive to achieve. Not only do you have to spend large amount of time to prepare and take very intense trainings and exams, but also would cost more than $25,000, and significant billable hours (I am a consultant).&lt;/p&gt;
&lt;p&gt;Fortunately, my manager was very supportive and was willing to spend the big amount of money for MCM on me. (Microsoft employees get less than 50% discount on MCM training and exam fees). So, like a fool, I decided to go down the route.&lt;/p&gt;
&lt;p&gt;Here is a list of major events&amp;nbsp;of my entire MCM experience:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Pass all SharePoint 2010 MCP exams (Feb. 2011)&lt;/li&gt;
&lt;li&gt;Apply for MCM: online application with $250 fee (May 2011)&lt;/li&gt;
&lt;li&gt;Submit resume and a write-up about my SharePoint projects (May 2011)&lt;/li&gt;
&lt;li&gt;Telephone interviewed by MCM program manager and a SharePoint Master (July 2011)&lt;/li&gt;
&lt;li&gt;Being accepted by MCM program and pick up a training rotation (July 2011)&lt;/li&gt;
&lt;li&gt;Pay the&amp;nbsp;MCM program&amp;nbsp;fee ($25,000&amp;nbsp;minus discount) (July 2011)&lt;/li&gt;
&lt;li&gt;Prepare for the rotation (July &amp;ndash; early September 2011)&lt;/li&gt;
&lt;li&gt;Attend the on-site 3-week MCM training rotation in Redmond, WA (September 2011)&lt;/li&gt;
&lt;li&gt;Pass knowledge exam (September 2011)&lt;/li&gt;
&lt;li&gt;Fail Hands-on Qualification Lab (September 2011)&lt;/li&gt;
&lt;li&gt;Prepare for QualLab retake (October 2011 &amp;ndash; March 2012)&lt;/li&gt;
&lt;li&gt;Pick a&amp;nbsp;slot for QualLab retake (February 2012)&lt;/li&gt;
&lt;li&gt;Pay QualLab retake fee ($2,500 minus Microsoft discount) (February 2012)&lt;/li&gt;
&lt;li&gt;Take the QualLab retake (March 20, 2012)&lt;/li&gt;
&lt;li&gt;Pass the retake and officially become a MCM (March 22, 2012)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;As you can see, it has been a very intense year for me and my team has spent a lot of money and lost quite some&amp;nbsp;billable hours on it. And frankly speaking, I still couldn't believe I am a Master now. I still couldn't believe that my name will be listed&amp;nbsp;with the world's&amp;nbsp;best SharePoint gurus whom I look up to.&lt;/p&gt;
&lt;p&gt;My many&amp;nbsp;thanks go to my manager, MCM program managers, MCM instructorsm, my classmates at the rotation, and especially my wife and kids, they suffered when I was away preparing and going on training, they comforted me when I did not pass all the exams at first try, they supported my efforts and rejoiced when it&amp;nbsp;had finally come.&lt;/p&gt;
&lt;p&gt;Here are some links for&amp;nbsp;the MCM program&amp;nbsp;if you want to learn more&amp;nbsp;about it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MCM Overview: &lt;a href="http://www.microsoft.com/learning/en/us/certification/master.aspx"&gt;http://www.microsoft.com/learning/en/us/certification/master.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;MCMs and MCAs List: &lt;a href="http://www.microsoft.com/learning/en/us/certification/master.aspx#meet"&gt;http://www.microsoft.com/learning/en/us/certification/master.aspx#meet&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Master Blog: &lt;a href="http://blogs.technet.com/themasterblog/"&gt;http://blogs.technet.com/themasterblog/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Zewei Song, Ph.D.&lt;br /&gt;Microsoft Certified Master: SharePoint Server 2010&lt;br /&gt;Microsoft Consulting Services&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10287388" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="MCP" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/MCP/" /><category term="Microsoft Certificaed Master" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Microsoft+Certificaed+Master/" /><category term="MCM" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/MCM/" /></entry><entry><title>Set-MsolAdfscontext Authentication Error</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2011/06/08/set-msoladfscontext-authentication-error.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2011/06/08/set-msoladfscontext-authentication-error.aspx</id><published>2011-06-08T20:00:38Z</published><updated>2011-06-08T20:00:38Z</updated><content type="html">&lt;p&gt;You are setting up Office 365 ADFS/SSO, you are connected to your Office 365 tenant with Microsoft Online Services Module for Windows PowerShell, you are trying to run Set-MsolAdfscontext -Computer &amp;lt;ADFS server FQDN&amp;gt; but keep getting prompted for your Windows credential and eventually receive an authentication error, you make sure that the Windows AD account you use has all the permissions and the ADFS server's FQDN is correct and there is no network issues between your server and the ADFS server, but it just would not let you to set the MSOnline ADFS context.&lt;/p&gt;
&lt;p&gt;Turns out the fix is very simple: Run "&lt;span style="background-color: #ffff00;"&gt;Enable-PSRemoting -Force&lt;/span&gt;"cmdlet before your Set-MsolAdfscontext cmdlet.&lt;/p&gt;
&lt;p&gt;This is what you do to set up an Office 365 SSO domain:&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;$cred=Get-Credential&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;Connect-MsolService -Credential $cred&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;Enable-PSRemoting -Force&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;Set-MsolAdfscontext -Computer &amp;lt;ADFS server FQDN&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;New-MsolFederatedDomain -DomainName &amp;lt;Domain FQDN&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Enjoy Office 365!&lt;/p&gt;
&lt;p&gt;Zewei Song, Ph.D.&lt;br /&gt;MCPD, MCITP, MCTS: SharePoint 2010, .NET 3.5&lt;br /&gt;Enterprise Services, Microsoft Corporation&lt;/p&gt;
&lt;p&gt;This is what you would see in log file for this error:&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;&lt;i&gt;6/6/2011 2:46:42 PM Command Set-&lt;/i&gt;&lt;i&gt;MsolADFSContext&lt;/i&gt;&lt;i&gt; invoked.&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:42 PM Creating ADFS Server PS session.&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:42 PM &lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;:&lt;/i&gt;&lt;i&gt;CreatePowerShellSessionToGenevaServer&lt;/i&gt;&lt;i&gt;: Invoked.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:42 PM Creating PS session to '&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com' ADFS server&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:42 PM Connect using current logged-on user &lt;/i&gt;&lt;i&gt;creds&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:42 PM &lt;/i&gt;&lt;i&gt;Runspace&lt;/i&gt;&lt;i&gt; Connection info: Scheme:http Port:5985, &lt;/i&gt;&lt;i&gt;AuthenticationType&lt;/i&gt;&lt;i&gt;:Default Uri:&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com &lt;/i&gt;&lt;i&gt;AppName&lt;/i&gt;&lt;i&gt;:&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;, Shell:http://&lt;/i&gt;&lt;i&gt;schemas&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;microsoft&lt;/i&gt;&lt;i&gt;.com/&lt;/i&gt;&lt;i&gt;powershell&lt;/i&gt;&lt;i&gt;/Microsoft.&lt;/i&gt;&lt;i&gt;PowerShell&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:42 PM Connection Uri: &lt;a href="http://adfsserver.contoso.com:5985/wsman/"&gt;http://adfsServer.contoso.com:5985/wsman/&lt;/a&gt;&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:42 PM Opening &lt;/i&gt;&lt;i&gt;runspace&lt;/i&gt;&lt;i&gt; to 'http://&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com:5985/&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;/'&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:45 PM System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingTransportException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.AsyncResult.EndInvoke()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at System.Management.Automation.&lt;/i&gt;&lt;i&gt;Runspaces&lt;/i&gt;&lt;i&gt;.Internal.&lt;/i&gt;&lt;i&gt;RunspacePoolInternal&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;EndOpen&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;IAsyncResult&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;asyncResult&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.RunspacePool.Open()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;VerifyAndReconnectRunSpacePool&lt;/i&gt;&lt;i&gt;()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:45 PM &lt;/i&gt;&lt;i&gt;fullyQualifiedErrorId&lt;/i&gt;&lt;i&gt;: System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingDataStructureException&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:45 PM Command failed: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ParseAndThrowErrorRecord&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;ErrorRecord&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;errorRecord&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;overRideErrorId&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at Microsoft.Online.Identity.Federation.Powershell.PowerShellSession.VerifyAndReconnectRunSpacePool()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;OpenToGenevaServer&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;PSCredential&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;serverCredential&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&amp;lt;&amp;gt;c__DisplayClass2.&amp;lt;&lt;/i&gt;&lt;i&gt;CreatePowerShellSessionToGenevaServer&lt;/i&gt;&lt;i&gt;&amp;gt;b__0()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.Utility.&lt;/i&gt;&lt;i&gt;InvokeOperationWithRetry&lt;/i&gt;&lt;i&gt;(Action operation, Type &lt;/i&gt;&lt;i&gt;exceptionType&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryCount&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryWaitTimeInMilliseconds&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:45 PM Retry &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;: &lt;/i&gt;&lt;i&gt;ConnectionToGenevaServerFailed&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:45 PM Retry exception: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:45 PM Going to sleep mode for 1000 milliseconds before reattempt - 2&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:46 PM &lt;/i&gt;&lt;i&gt;Runspace&lt;/i&gt;&lt;i&gt; Connection info: Scheme:http Port:5985, &lt;/i&gt;&lt;i&gt;AuthenticationType&lt;/i&gt;&lt;i&gt;:Default Uri:&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com &lt;/i&gt;&lt;i&gt;AppName&lt;/i&gt;&lt;i&gt;:&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;, Shell:http://&lt;/i&gt;&lt;i&gt;schemas&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;microsoft&lt;/i&gt;&lt;i&gt;.com/&lt;/i&gt;&lt;i&gt;powershell&lt;/i&gt;&lt;i&gt;/Microsoft.&lt;/i&gt;&lt;i&gt;PowerShell&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:46 PM Connection Uri: &lt;a href="http://adfsserver.contoso.com:5985/wsman/"&gt;http://adfsServer.contoso.com:5985/wsman/&lt;/a&gt;&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:46 PM Opening &lt;/i&gt;&lt;i&gt;runspace&lt;/i&gt;&lt;i&gt; to 'http://&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com:5985/&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;/'&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:49 PM System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingTransportException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.AsyncResult.EndInvoke()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at System.Management.Automation.&lt;/i&gt;&lt;i&gt;Runspaces&lt;/i&gt;&lt;i&gt;.Internal.&lt;/i&gt;&lt;i&gt;RunspacePoolInternal&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;EndOpen&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;IAsyncResult&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;asyncResult&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.RunspacePool.Open()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;VerifyAndReconnectRunSpacePool&lt;/i&gt;&lt;i&gt;()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:49 PM &lt;/i&gt;&lt;i&gt;fullyQualifiedErrorId&lt;/i&gt;&lt;i&gt;: System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingDataStructureException&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:49 PM Command failed: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ParseAndThrowErrorRecord&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;ErrorRecord&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;errorRecord&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;overRideErrorId&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at Microsoft.Online.Identity.Federation.Powershell.PowerShellSession.VerifyAndReconnectRunSpacePool()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;OpenToGenevaServer&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;PSCredential&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;serverCredential&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&amp;lt;&amp;gt;c__DisplayClass2.&amp;lt;&lt;/i&gt;&lt;i&gt;CreatePowerShellSessionToGenevaServer&lt;/i&gt;&lt;i&gt;&amp;gt;b__0()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.Utility.&lt;/i&gt;&lt;i&gt;InvokeOperationWithRetry&lt;/i&gt;&lt;i&gt;(Action operation, Type &lt;/i&gt;&lt;i&gt;exceptionType&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryCount&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryWaitTimeInMilliseconds&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:49 PM Retry &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;: &lt;/i&gt;&lt;i&gt;ConnectionToGenevaServerFailed&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:49 PM Retry exception: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:49 PM Going to sleep mode for 2000 milliseconds before reattempt - 3&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:51 PM &lt;/i&gt;&lt;i&gt;Runspace&lt;/i&gt;&lt;i&gt; Connection info: Scheme:http Port:5985, &lt;/i&gt;&lt;i&gt;AuthenticationType&lt;/i&gt;&lt;i&gt;:Default Uri:&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com &lt;/i&gt;&lt;i&gt;AppName&lt;/i&gt;&lt;i&gt;:&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;, Shell:http://&lt;/i&gt;&lt;i&gt;schemas&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;microsoft&lt;/i&gt;&lt;i&gt;.com/&lt;/i&gt;&lt;i&gt;powershell&lt;/i&gt;&lt;i&gt;/Microsoft.&lt;/i&gt;&lt;i&gt;PowerShell&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:51 PM Connection Uri: &lt;a href="http://adfsserver.contoso.com:5985/wsman/"&gt;http://adfsServer.contoso.com:5985/wsman/&lt;/a&gt;&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:51 PM Opening &lt;/i&gt;&lt;i&gt;runspace&lt;/i&gt;&lt;i&gt; to 'http://&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com:5985/&lt;/i&gt;&lt;i&gt;wsman&lt;/i&gt;&lt;i&gt;/'&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingTransportException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.AsyncResult.EndInvoke()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at System.Management.Automation.&lt;/i&gt;&lt;i&gt;Runspaces&lt;/i&gt;&lt;i&gt;.Internal.&lt;/i&gt;&lt;i&gt;RunspacePoolInternal&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;EndOpen&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;IAsyncResult&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;asyncResult&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at System.Management.Automation.Runspaces.RunspacePool.Open()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;VerifyAndReconnectRunSpacePool&lt;/i&gt;&lt;i&gt;()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM &lt;/i&gt;&lt;i&gt;fullyQualifiedErrorId&lt;/i&gt;&lt;i&gt;: System.Management.Automation.&lt;/i&gt;&lt;i&gt;Remoting&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PSRemotingDataStructureException&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM Command failed: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;i&gt;: Connecting to remote server failed with the following error message : The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destination, most commonly IIS or &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt;. If the destination is the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service, run the following command on the destination to analyze and configure the &lt;/i&gt;&lt;i&gt;WinRM&lt;/i&gt;&lt;i&gt; service: "&lt;/i&gt;&lt;i&gt;winrm&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;quickconfig&lt;/i&gt;&lt;i&gt;". For more information, see the about_Remote_Troubleshooting Help topic.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;PowerShellSession&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ParseAndThrowErrorRecord&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;ErrorRecord&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;errorRecord&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;overRideErrorId&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;em&gt;at Microsoft.Online.Identity.Federation.Powershell.PowerShellSession.VerifyAndReconnectRunSpacePool()&lt;/em&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;OpenToGenevaServer&lt;/i&gt;&lt;i&gt;(&lt;/i&gt;&lt;i&gt;PSCredential&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;serverCredential&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;ContextCredentialsCommand&lt;/i&gt;&lt;i&gt;.&amp;lt;&amp;gt;c__DisplayClass2.&amp;lt;&lt;/i&gt;&lt;i&gt;CreatePowerShellSessionToGenevaServer&lt;/i&gt;&lt;i&gt;&amp;gt;b__0()&lt;/i&gt;&lt;br /&gt;&lt;i&gt;at Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.Utility.&lt;/i&gt;&lt;i&gt;InvokeOperationWithRetry&lt;/i&gt;&lt;i&gt;(Action operation, Type &lt;/i&gt;&lt;i&gt;exceptionType&lt;/i&gt;&lt;i&gt;, String &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryCount&lt;/i&gt;&lt;i&gt;, Int32 &lt;/i&gt;&lt;i&gt;retryWaitTimeInMilliseconds&lt;/i&gt;&lt;i&gt;)&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM Retry &lt;/i&gt;&lt;i&gt;errorId&lt;/i&gt;&lt;i&gt;: &lt;/i&gt;&lt;i&gt;ConnectionToGenevaServerFailed&lt;/i&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM Retry exception: Microsoft.Online.Identity.Federation.&lt;/i&gt;&lt;i&gt;Powershell&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;IdentityFederationException&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:54 PM Failure after too many retries attempts..&lt;/em&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:54 PM Wrong credentials to ADFS Server connection, attempt #'1'&lt;/em&gt;&lt;br /&gt;&lt;i&gt;6/6/2011 2:46:54 PM Prompting the user for '&lt;/i&gt;&lt;i&gt;adfsServer&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;i&gt;contoso&lt;/i&gt;&lt;i&gt;.com' ADFS Server &lt;/i&gt;&lt;i&gt;creds&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;br /&gt;&lt;em&gt;6/6/2011 2:46:54 PM ContextCredentialsCommand:GetServerCredentials: Invoked.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10172653" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="Office 365" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Office+365/" /><category term="ADFS" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/ADFS/" /><category term="SSO" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SSO/" /><category term="BPOS-S" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/BPOS_2D00_S/" /></entry><entry><title>Killing two birds with one stone: SharePoint HA and DR with stretch farm, and everything you want to know about it</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2011/04/04/killing-two-birds-with-one-stone-sharepoint-ha-and-dr-with-stretch-farm-and-everything-you-want-to-know-about-it.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2011/04/04/killing-two-birds-with-one-stone-sharepoint-ha-and-dr-with-stretch-farm-and-everything-you-want-to-know-about-it.aspx</id><published>2011-04-04T17:10:00Z</published><updated>2011-04-04T17:10:00Z</updated><content type="html">&lt;p&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-size: small;"&gt;A single SharePoint farm running&amp;nbsp;across multiple data centers is called a &amp;ldquo;stretch farm&amp;rdquo;. &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-size: small;"&gt;Using a stretched SharePoint farm, you can provide fault tolerance by following the standard guidance for making databases and service applications redundant. Therefore you can achieve high availability and disaster recovery at the same time.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;You can follow this articles to set up a stretch farm using SQL mirroring: &lt;a href="http://technet.microsoft.com/en-us/library/dd207314.aspx"&gt;http://technet.microsoft.com/en-us/library/dd207314.aspx&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;span style="font-size: small;"&gt;&lt;img src="http://i.technet.microsoft.com/cc748824.79a94f30-3620-403c-b57a-9564f99aff84(en-us,Office.14).gif" border="0" style="max-width: 550px;" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Following&amp;nbsp;Q&amp;amp;As&amp;nbsp;are based on my real-world experiences with SQL mirror and SharePoint&amp;nbsp;stretch farm.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: small;"&gt;Questions and Answers (DC stands for Data Center):&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What are the requirements for setting up a SharePoint stretch farm?&lt;br /&gt;&lt;/strong&gt;For a stretched farm to work, there must be less than 1 millisecond latency between all the SQL Servers and the front-end Web servers in one direction, and at least 1 gigabit per second bandwidth.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Where to put the witness server?&lt;br /&gt;&lt;/strong&gt;Put the witness server in the most reliable DC. If the&amp;nbsp;secondary DC is more reliable and the connection between the DCs&amp;nbsp;is at least as reliable as the DCs, you can put the witness in the secondary DC, otherwise, it should be in the primary&amp;nbsp;DC.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What is the minimum firewall requirements for the&amp;nbsp;witness server?&lt;br /&gt;&lt;/strong&gt;Open up the&amp;nbsp;TCP port of the SQL mirroring endpoint for inbound traffic.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Can I use SQL Express&amp;nbsp;as the witness?&lt;/strong&gt;&lt;br /&gt;Yes, you can.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;How to test a stretch farm?&lt;br /&gt;&lt;/strong&gt;You can simulate a failed SQL server by stopping its service using SQL Management Studio. Open the studio, connect to the SQL instance and right click on the instance name on the left pane and select Stop command. If the SQL instance is the principal,&amp;nbsp;the mirror SQL instace will&amp;nbsp;take over the principal role and the&amp;nbsp;SharePoint farm&amp;nbsp;will come back to service within a few seconds.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;How to manually failover from one DC to another DC?&lt;br /&gt;&lt;/strong&gt;Run following T-SQL command on the principal SQL server instance. You need to run the command for each database.&lt;br /&gt;&lt;/span&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: 'Courier New'; color: blue; mso-no-proof: yes;"&gt;ALTER&lt;/span&gt;&lt;span style="font-family: 'Courier New'; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;DATABASE&lt;/span&gt;&amp;nbsp;&amp;lt;your database name&amp;gt; &lt;span style="color: blue;"&gt;SET&lt;/span&gt; &lt;span style="color: blue;"&gt;PARTNER&lt;/span&gt; &lt;span style="color: blue;"&gt;FAILOVER&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What to do when&amp;nbsp;I lose the primary DC?&lt;/strong&gt;&lt;br /&gt;When you have the witness server in primary DC and the whole DC is gone (disaster happens), the mirror SQL instance will become "Principal - In Recovery" but won't serve data. To bring it back online so your SharePoint services resume, you need to run following T-SQL commands. You have to do it for all of your databases.&lt;br /&gt;&lt;/span&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: 'Courier New'; color: blue; mso-no-proof: yes;"&gt;ALTER&lt;/span&gt;&lt;span style="font-family: 'Courier New'; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;DATABASE&lt;/span&gt;&amp;nbsp;&amp;lt;your database name&amp;gt; &lt;span style="color: blue;"&gt;SET&lt;/span&gt; &lt;span style="color: blue;"&gt;PARTNER&lt;/span&gt; &lt;span style="color: blue;"&gt;OFF&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: 'Courier New'; color: blue; mso-no-proof: yes;"&gt;RESTORE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;DATABASE&lt;/span&gt; &amp;lt;your database name&amp;gt; &lt;span style="color: blue;"&gt;WITH&lt;/span&gt; &lt;span style="color: blue;"&gt;RECOVERY&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="line-height: 115%; font-family: 'Courier New'; mso-no-proof: yes;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&lt;span style="font-family: Arial;"&gt;Above commands&amp;nbsp;break the mirroring partnership. You have to&amp;nbsp;backup/restore the databases and&amp;nbsp;resume the partnership after the primary DC is recovered.&lt;br /&gt;If the witness server is in the secondary DC, the mirror SQL instance will automatically become the principal server, your SharePoint farm will resume services in a few seconds.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="line-height: 115%; font-family: 'Courier New'; mso-no-proof: yes;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What to do when the primary DC is recovered after a disaster?&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Assume you already ran the commands to break the mirror partnership. You have to follow the steps to resume it. Note the principal SQL&amp;nbsp;instance is in the secondary DC at this point:&lt;br /&gt;&amp;nbsp; 1.&amp;nbsp;On the principal server, back up all SharePoint databases.&lt;br /&gt;&amp;nbsp; 2.&amp;nbsp;Copy the backup files to the mirror database server. The server should be running on stand-alone mode.&lt;br /&gt;&amp;nbsp; 3.&amp;nbsp;Delete all the SharePoint databases from the mirror database server if they are still present &lt;br /&gt;&amp;nbsp; 4.&amp;nbsp;Restore the databases to the mirror server.&lt;br /&gt;&amp;nbsp; 5.&amp;nbsp;On the mirror server, set up the mirroring partnership.&lt;br /&gt;&amp;nbsp; 6.&amp;nbsp;On the principal server, set up the mirroring partnership.&lt;br /&gt;&amp;nbsp; 7.&amp;nbsp;On the principal server, set up the witness partnership.&lt;br /&gt;&amp;nbsp; 8.&amp;nbsp;Test SharePoint and make sure it is still functioning.&lt;br /&gt;&amp;nbsp; 9.&amp;nbsp;Failover to the original principal server if necessary.&lt;br /&gt;If the SQL instance in the secondary DC automatically took over the principal role, you don't have to do anything but just&amp;nbsp;give&amp;nbsp;them some time to sync up.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What happens if I lose connection between the primary and the secondary data centers?&lt;/strong&gt;&lt;br /&gt;Assume both the DCs are still working but the connection between them is broken. Both the SQL instances will become principal. The one with access to the witness server will be serving data, the one without access to the witness will stop serving data&amp;nbsp;and the SharePoint servers in that DC will stop working.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Can SQL mirroring work with cluster?&lt;/strong&gt;&lt;br /&gt;Mirroring can work between SQL clusters, and a SQL cluster and a single server SQL instance. Mirroring, however,&amp;nbsp;does not work within a SQL cluster.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;What happens&amp;nbsp;when my principal cluster fails over?&lt;/strong&gt;&lt;br /&gt;SQL cluster failover always takes longer time&amp;nbsp;than SQL mirroring witness interval. Therefore, SQL mirroring roles will be switched when the principal cluster fails over. You can failover back to the original cluster after SQL cluster failover is complete.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Does stretch farm affect SharePoint performance?&lt;/strong&gt;&lt;br /&gt;According to my limited performance tests, no.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;How do I set up failover for SharePoint features that do not have UI to set up failover instances?&lt;br /&gt;&lt;/strong&gt;You can run following PowerShell commands in SharePoint PowerShell console on a SharePoint server:&lt;br /&gt;&lt;/span&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;$db&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;-&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;spdatabase&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;|&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;where&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;{&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;$_&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;Name&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;-&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;eq&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;"&amp;lt;database name&amp;gt;"&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;}&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;$db&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;AddFailoverServiceInstance&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: teal; mso-fareast-font-family: 'Times New Roman';"&gt;"&amp;lt;failover SQL instance name&amp;gt;"&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;)&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;$db&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; mso-fareast-font-family: 'Times New Roman';"&gt;Update&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; mso-fareast-font-family: 'Times New Roman';"&gt;()&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Does stretch farm protects all SharePoint functionalities?&lt;/strong&gt;&lt;br /&gt;No. It does not&amp;nbsp;protect functionalities with dependencies beyond 14-hive and databases. Some examples of the not supported dependencies are file shares, and external data sources.&amp;nbsp;Some 3rd party SharePoint solution without failover capabilities will also not be protected. Contact your vendors for more information.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Zewei Song, Ph.D.&lt;br /&gt;MCPD, MCITP, MCTS: SharePoint 2010, .NET 3.5&lt;br /&gt;Enterprise Services, Microsoft Corporation&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10149604" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="SQL Cluster" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SQL+Cluster/" /><category term="T-SQL" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/T_2D00_SQL/" /><category term="High Availability" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/High+Availability/" /><category term="Stretch Farm" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Stretch+Farm/" /><category term="Failover" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Failover/" /><category term="PowerShell" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/PowerShell/" /><category term="Disaster Recovery" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Disaster+Recovery/" /><category term="SQL Mirroring" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SQL+Mirroring/" /></entry><entry><title>Passed all 4 SharePoint 2010 MCP exams at TechReady</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2011/02/24/passed-all-4-sharepoint-2010-mcp-exams-at-techready.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2011/02/24/passed-all-4-sharepoint-2010-mcp-exams-at-techready.aspx</id><published>2011-02-24T22:13:00Z</published><updated>2011-02-24T22:13:00Z</updated><content type="html">&lt;p&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;/span&gt;&amp;nbsp;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;I passed all 4 SharePoint 2010 MCP exams at TechReady-12 (a Microsoft field employees only tech conference) and have gained following new MCP titles:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Microsoft Certified Professional Developer (MCPD): SharePoint Developer 2010&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Microsoft Certified IT Professional (MCITP): SharePoint Administrator 2010&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Microsoft Certified Technology Specialist (MCTS):&lt;/span&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;SharePoint 2010, Configuration&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;SharePoint 2010, Application Development&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Here are the exams I passed:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;70-573 TS: Microsoft SharePoint 2010, Application Development&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;70-667 TS: Microsoft Office SharePoint 2010, Configuring&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;70-576 PRO: Designing and Developing Microsoft SharePoint 2010 Applications&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;70-668 PRO: Microsoft SharePoint 2010, Administrator &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;It turned out that the PRO exams were easier to me than the TS'. However, without passing the TS exams, the PRO's would not be activated. The hardest one for me was 70-573, I failed the first time (scored 624) and had to re-take it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;I chatted with the guy who was managing the makeshift exam site at the conferece, he said the passing rate was about the same as his other "official" sites, around 50%. I figure since the exams for TechReady attendees were free so there would be much less stress and preparations for our Microsofties, like me, I didn't prepare for the exams at all. Therefore, we do know better about our own products.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;OK, here are some tips I would like to share&amp;nbsp;if you plan to take these exams:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Each exam has 50 questions, you have enough time to complete them, don&amp;rsquo;t rush&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;PRO exams are more focusing on case studies&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;PRO Admin exam requires SharePoint enterprise deployment experience&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Make sure you have clear knowledge on basic SharePoint concepts, for example, web app, site collection, site, &amp;hellip;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Make sure you understand the new 2010 features and concepts well&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Don&amp;rsquo;t stay on a single question for too long, make a guess, mark it and come back later&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Don&amp;rsquo;t change your answer if you guessed it, chances are your first guess is the correct one&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpLast"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt;Don&amp;rsquo;t panic and don&amp;rsquo;t blame yourself if you don&amp;rsquo;t pass, even I have failed &lt;/span&gt;&lt;span style="FONT-FAMILY: Wingdings; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;Zewei Song, Ph.D.&lt;br /&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;MCPD, MCITP, MCTS: SharePoint 2010, .NET 3.5&lt;br /&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;Enterprise Services, Microsoft Corporation&lt;/span&gt;&lt;span style="mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10133785" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="TechReady" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/TechReady/" /><category term="MCP" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/MCP/" /></entry><entry><title>Dealing with SAML token “The signature verification failed” error</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2011/01/13/dealing-with-saml-token-the-signature-verification-failed-error.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2011/01/13/dealing-with-saml-token-the-signature-verification-failed-error.aspx</id><published>2011-01-13T17:05:00Z</published><updated>2011-01-13T17:05:00Z</updated><content type="html">&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;If you are working with WIF and SAML tokens, chances are you have seen &amp;ldquo;The signature verification failed&amp;rdquo; error. It happened to me and almost drove me crazy!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;Signed SAML tokens&amp;nbsp;are&amp;nbsp;very elegant&amp;nbsp;XML documents/nodes. You are not supposed to touch it once it is generated and signed, because even a space added or removed would cause the verification to fail.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;In my case it was even more confusing: my code could successfully verify SAML tokens from one STS but always failed for another one. And to make things worse, the failing STS source was the production STS. (It seems that&amp;rsquo;s always the case &lt;/span&gt;&lt;span style="font-family: Wingdings; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings;"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings;"&gt;J&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Calibri;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;Turned out, the problem was a combination of the STS and the way .NET handles XML classes&amp;rsquo; InnerXml property:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst"&gt;&lt;span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"&gt;&lt;span style="mso-list: Ignore;"&gt;&lt;span style="font-size: small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font: 7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;The production STS generated SAML tokens with some newlines (&amp;ldquo;\n&amp;rdquo; or 0D-0A in hex)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast"&gt;&lt;span style="font-family: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;"&gt;&lt;span style="mso-list: Ignore;"&gt;&lt;span style="font-size: small;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font: 7pt 'Times New Roman';"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;When calling XmlNode&amp;rsquo;s InnerXml property to get the XML of the token from the XML document, it removes the newlines&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;It toke a lot of efforts to figure this out but it was pretty easy to fix after you know what went wrong. This is the method I wrote to get the XML of the token from the whole XML doc:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: blue;"&gt;private&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetTokenXMLString(&lt;span style="color: blue;"&gt;string&lt;/span&gt; originalXmlString, &lt;span style="color: #2b91af;"&gt;XmlNode&lt;/span&gt; assertion)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&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;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;string&lt;/span&gt; assertionHeader = assertion.Name;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;string&lt;/span&gt; beginPoint = &lt;span style="color: #a31515;"&gt;@"&amp;lt;"&lt;/span&gt; + assertionHeader;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;string&lt;/span&gt; endPoint = &lt;span style="color: #a31515;"&gt;@"&amp;lt;/"&lt;/span&gt; + assertionHeader + &lt;span style="color: #a31515;"&gt;@"&amp;gt;"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;int&lt;/span&gt; beginIndex = originalXmlString.IndexOf(beginPoint, &lt;span style="color: #2b91af;"&gt;StringComparison&lt;/span&gt;.InvariantCultureIgnoreCase);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;int&lt;/span&gt; endIndex = originalXmlString.IndexOf(endPoint, beginIndex, &lt;span style="color: #2b91af;"&gt;StringComparison&lt;/span&gt;.InvariantCultureIgnoreCase);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&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;span style="color: blue;"&gt;return&lt;/span&gt; originalXmlString.Substring(beginIndex, endIndex - beginIndex + endPoint.Length);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="mso-spacerun: yes;"&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;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;Before you call this method, you need to verify that there is an assertion Node within the XML document and pass it as &lt;/span&gt;&lt;span style="line-height: 115%; font-family: Consolas; font-size: 9.5pt;"&gt;assertion&lt;/span&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt; parameter. The &lt;/span&gt;&lt;span style="line-height: 115%; font-family: Consolas; font-size: 9.5pt;"&gt;originalXmlString&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt; parameter is the original XML string of the XML document, and you don&amp;rsquo;t want to get it by using Inner or OuterXml properties. Of cause you need to trap errors and add your log/trace logic to this routine.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;Good luck and enjoy SAML!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: 'Arial','sans-serif'; font-size: 10pt; mso-no-proof: yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: 'Arial','sans-serif'; font-size: 10pt; mso-no-proof: yes;"&gt;Zewei Song, Ph.D.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: 'Arial','sans-serif'; font-size: 10pt; mso-no-proof: yes;"&gt;MCPD, MCTS: .NET 3.5, MOSS AppDev, Configuration&lt;/span&gt;&lt;span style="mso-no-proof: yes; mso-bidi-font-family: Calibri; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: 'Arial','sans-serif'; font-size: 10pt; mso-no-proof: yes;"&gt;Enterprise Services, Microsoft Corporation&lt;/span&gt;&lt;/p&gt;
&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10115385" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Development/" /><category term="SAML" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SAML/" /><category term="WIF" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/WIF/" /><category term="SharePint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePint+2010/" /></entry><entry><title>Changing SharePoint Account's Password on Client OS</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2010/10/07/changing-sharepoint-account-s-password-on-client-os.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2010/10/07/changing-sharepoint-account-s-password-on-client-os.aspx</id><published>2010-10-07T20:45:00Z</published><updated>2010-10-07T20:45:00Z</updated><content type="html">&lt;p&gt;As promised, I will show you how to refresh your SharePoint account on a client OS (Windows 7) after you changed its password.&lt;/p&gt;
&lt;p&gt;On my Windows 7 laptop, I use my corporate domain user (you have to use a domain account for a full version of SharePoint)&amp;nbsp;as SharePoint 2010's service account (for how to install a full SharePoint 2010 to Windows 7, please check my other post at: &lt;a href="http://blogs.msdn.com/b/zwsong/archive/2010/04/29/installing-complete-version-of-sharepoint-server-2010-on-windows-7.aspx"&gt;http://blogs.msdn.com/b/zwsong/archive/2010/04/29/installing-complete-version-of-sharepoint-server-2010-on-windows-7.aspx&lt;/a&gt;), and it can't be managed by SharePoint itself. So&amp;nbsp;after I changed my domain account's password, my SharePoint farm stopped working. I see a 503 error when I try to visit the CA site: &lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family: 'Times New Roman','serif'; font-size: 18pt; mso-fareast-font-family: 'Times New Roman';"&gt;Service Unavailable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;div align="center" class="MsoNormal" style="text-align: center; line-height: normal; margin: 0in 0in 0pt;"&gt;&lt;span style="font-family: 'Times New Roman','serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;
&lt;hr width="100%" size="2" align="center" /&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;span style="font-family: 'Times New Roman','serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;"&gt;HTTP Error 503. The service is unavailable.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;There are&amp;nbsp;two sets of accounts you need to refresh:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SharePoint Windows Services&lt;/li&gt;
&lt;li&gt;SharePoint IIS Application Pools&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To&amp;nbsp;refresh Windows Services' accounts' passwords, go to your machine's Services Management Console (I always right click Computer and&amp;nbsp;select Manage). Now, navigate to Services under Services and Application. On the right pane, click on its title bar's Log On As to sort the list by account name. I see four SharePoint services under my domain account. Go to each of them and refresh their passwords. The 4 services are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SharePoint 2010 Timer&lt;/li&gt;
&lt;li&gt;SharePoint 2010 User Code Host&lt;/li&gt;
&lt;li&gt;SharePoint Server Search 14&lt;/li&gt;
&lt;li&gt;Web Analytics Service&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Now, navigate to IIS Manager, and click on Application Pools. On your application pools list, click on Identity to sort it by account name. You have to refresh passwords for all the application pools using your domain accounts.&lt;/p&gt;
&lt;p&gt;After all the changes, restart SQL server and IIS, you should have your SharePoint 2010 farm back.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: 'Arial', 'sans-serif'; font-size: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes;"&gt;Zewei Song, Ph.D.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: 'Arial', 'sans-serif'; font-size: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes;"&gt;MCPD, MCTS: .NET 3.5, MOSS AppDev, Configuration&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: 'Arial', 'sans-serif'; font-size: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes;"&gt;Enterprise Services, Microsoft Corporation&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10072947" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="Configuration" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Configuration/" /></entry><entry><title>How To Hide Ribbon From Users Without Edit Page Privilege</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2010/04/29/how-to-hide-ribbon-from-users-without-edit-page-privilege.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2010/04/29/how-to-hide-ribbon-from-users-without-edit-page-privilege.aspx</id><published>2010-04-29T20:28:00Z</published><updated>2010-04-29T20:28:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;Ribbon is a great new feature introduced by SharePoint 2010. It provides great user experience for users with elevated privileges, like contributors and site owners. However, for users with lease privilege, such as visitors and anonymous users, it seems like a big waste of page real estate. Because for those users, all ribbon provides are navigation breadcrumb and welcome control (user name with a drop down list on top-right corner).&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;So I have been asked to figure out a way to remove or hide the ribbon area from user with lease privilege, and here is how:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;1)&lt;/span&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;span style="font-family: Calibri; font-size: small;"&gt;Open your SharePoint master page&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;2)&lt;/span&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;span style="font-family: Calibri; font-size: small;"&gt;Locate this line:&lt;br /&gt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;&amp;lt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt"&gt;div&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"&gt; &lt;span style="COLOR: red"&gt;id&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="s4-ribbonrow"&lt;/span&gt; &lt;span style="COLOR: red"&gt;class&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="s4-pr s4-ribbonrowhidetitle"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;3)&lt;/span&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;span style="font-family: Calibri; font-size: small;"&gt;Change it to:&lt;br /&gt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;&amp;lt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt"&gt;div&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"&gt; &lt;span style="COLOR: red"&gt;id&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="s4-ribbonrow"&lt;/span&gt; &lt;span style="COLOR: red"&gt;class&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="s4-pr s4-ribbonrowhidetitle"&lt;/span&gt; &lt;span style="BACKGROUND: yellow; COLOR: red; mso-highlight: yellow"&gt;style&lt;/span&gt;&lt;span style="BACKGROUND: yellow; COLOR: blue; mso-highlight: yellow"&gt;="&lt;/span&gt;&lt;span style="BACKGROUND: yellow; COLOR: red; mso-highlight: yellow"&gt;display&lt;/span&gt;&lt;span style="BACKGROUND: yellow; COLOR: blue; mso-highlight: yellow"&gt;:none"&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;4)&lt;/span&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;span style="font-family: Calibri; font-size: small;"&gt;Now find the end of the &amp;ldquo;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;s4-ribbonrow&lt;/span&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;&amp;rdquo; tag and add following block right after it:&lt;br /&gt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;&amp;lt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt"&gt;Sharepoint&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;:&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: maroon; FONT-SIZE: 9.5pt"&gt;SPSecurityTrimmedControl&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"&gt; &lt;span style="COLOR: red"&gt;ID&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="SPSecurityTrimmedControl2"&lt;/span&gt; &lt;span style="COLOR: red"&gt;runat&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="server"&lt;/span&gt; &lt;span style="COLOR: red"&gt;PermissionsString&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="AddAndCustomizePages"&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: maroon"&gt;script&lt;/span&gt; &lt;span style="COLOR: red"&gt;type&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="text/javascript"&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;document.getElementById(&lt;span style="COLOR: maroon"&gt;"s4-ribbonrow"&lt;/span&gt;).style.display = &lt;span style="COLOR: maroon"&gt;"block"&lt;/span&gt;;&lt;br /&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: maroon"&gt;script&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;br /&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: maroon"&gt;Sharepoint&lt;/span&gt;&lt;span style="COLOR: blue"&gt;:&lt;/span&gt;&lt;span style="COLOR: maroon"&gt;SPSecurityTrimmedControl&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-fareast-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;5)&lt;/span&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;span style="font-family: Calibri; font-size: small;"&gt;Save the new master page and publish it.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;Now when a user without &amp;ldquo;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;AddAndCustomizePages&lt;/span&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;&amp;rdquo; access to view the site, they would not see the ribbon area. You may want to move at least the welcome control to somewhere outside the ribbon area so your lease privilege users can see their user names.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;The reason that you have to do it the other way around: make the ribbon invisible (step 3) and make it visible only when users have &amp;ldquo;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt"&gt;AddAndCustomizePages&lt;/span&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;&amp;rdquo; access (step 4) is the ribbon HTML code has to be rendered to the browser otherwise you would lose some basic abilities on the page, like, to be able to scroll up and down.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;Enjoy your page real estate back!&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;Zewei Song, Ph.D.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;MCPD, MCTS: .NET 3.5, MOSS AppDev, Configuration&lt;/span&gt;&lt;span style="mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;Enterprise Services, Microsoft Corporation&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10004782" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="Development" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Development/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="Anonymous" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Anonymous/" /></entry><entry><title>Installing Complete Version of SharePoint Server 2010 on Windows Client OS</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/zwsong/archive/2010/04/29/installing-complete-version-of-sharepoint-server-2010-on-windows-7.aspx" /><id>http://blogs.msdn.com/b/zwsong/archive/2010/04/29/installing-complete-version-of-sharepoint-server-2010-on-windows-7.aspx</id><published>2010-04-29T16:27:00Z</published><updated>2010-04-29T16:27:00Z</updated><content type="html">&lt;P&gt;Yes, I&amp;nbsp;successfully installed&amp;nbsp;complete version (not the standalone one)&amp;nbsp;of SP2010 on my Windows 7 laptop. Here is how I did it:&lt;/P&gt;
&lt;P&gt;Make sure your Windows client OS&amp;nbsp;is 64-bit and&amp;nbsp;domain joined and you have a domain account with local administrator's privilege.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I followed most of the instructions from this article: &lt;A href="http://msdn.microsoft.com/en-us/library/ee554869(office.14).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ee554869(office.14).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee554869(office.14).aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;At the #3 of Step 3, instead of clicking on "Standalone", click on "Server Farm", and selected "Complete" option on the following screen.&lt;/P&gt;
&lt;P&gt;After&amp;nbsp;SharePoint 2010&amp;nbsp;installation is finished, skip the Configuration Wizard and install SQL Server 2008. Here are the tricks for installing SQL 2008:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Use either a domain account or NETWORK SERVICES to run the SQL services&lt;/LI&gt;
&lt;LI&gt;Assign the domain account as SQL's administrator&lt;/LI&gt;
&lt;LI&gt;Download and install SQL 2008 SP1 right after SQL 2008 installation: &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19&amp;amp;displaylang=en&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Download and install SQL 2008 SP1 CU2 right after SP1 installation: &lt;A href="http://support.microsoft.com/kb/970315" mce_href="http://support.microsoft.com/kb/970315"&gt;http://support.microsoft.com/kb/970315&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Now, after rebooting, you can start SharePoint 2010's Configuration Wizard, select create a new farm and give it your SQL server's information. Note, you will need to use your domain account to set up the new farm, and during the configuration processes, SharePoint 2010 Configuration Wizard would need to talk to you domain controllers, so make sure your Windows PC is connected to the domain (I did this via VPN).&lt;/P&gt;
&lt;P&gt;Happy playing with a "real" version of SharePoint 2010 on&amp;nbsp;your PC!&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;Zewei Song, Ph.D.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;MCPD, MCTS: .NET 3.5, MOSS AppDev, Configuration&lt;/SPAN&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;Enterprise Services, Microsoft Corporatio&lt;/SPAN&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10004666" width="1" height="1"&gt;</content><author><name>Dr. Z</name><uri>http://blogs.msdn.com/zwsong/ProfileUrlRedirect.ashx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint/" /><category term="SharePoint 2010" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/SharePoint+2010/" /><category term="Configuration" scheme="http://blogs.msdn.com/b/zwsong/archive/tags/Configuration/" /></entry></feed>