tag:blogger.com,1999:blog-25618415749521830342024-02-21T18:27:43.014+05:30SharePoint Information ProviderAnonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.comBlogger29125tag:blogger.com,1999:blog-2561841574952183034.post-79882257246738365442015-10-29T20:46:00.007+05:302015-10-29T20:48:47.223+05:30PowerShell Script to Check SharePoint Timer Job and Mail to User if Fails and Restart the Service<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Scenario:</b> when we have failed SharePoint timer job due to windows SharePoint Timer Service where not responded. In this case we need to go and check the timer jobs, if it's failed. go and check windows SharePoint Timer Service ans restart the service. if it happens in one server means, it wont take much time. if its in large farm. It will take much time. so we thought of creating script for it.<br />
<div>
<br /></div>
<div>
<b>What the Script will do:</b></div>
<div>
Script will check the timer job which is failed state for today. if it's has failed job, it will send mail to support team and restart the windows Timer Service.</div>
<div>
<br /></div>
<div>
<b>Script:</b></div>
<div>
<b><br /></b></div>
<div>
<div>
Add-PSSnapin Microsoft.sharepoint.powershell</div>
<div>
<br /></div>
<div>
$farm = get-spfarm</div>
<div>
$tservice = $farm.TimerService</div>
<div>
<br /></div>
<div>
$a = Get-Date</div>
<div>
<br /></div>
<div>
function sendMail{</div>
<div>
<br /></div>
<div>
$file = "d:\failedjobs.csv"</div>
<div>
<br /></div>
<div>
$att = new-object Net.Mail.Attachment($file)</div>
<div>
<br /></div>
<div>
#SMTP server name</div>
<div>
$smtpServer = "fill the smtpserver"</div>
<div>
<br /></div>
<div>
#Creating a Mail object</div>
<div>
$msg = new-object Net.Mail.MailMessage</div>
<div>
<br /></div>
<div>
#Creating SMTP server object</div>
<div>
$smtp = new-object Net.Mail.SmtpClient($smtpServer)</div>
<div>
<br /></div>
<div>
#Email structure </div>
<div>
$msg.From = "sharepoint2013@g.com"</div>
<div>
<br /></div>
<div>
</div>
<div>
$msg.CC.Add("abcdef@g.com")</div>
<div>
<br /></div>
<div>
$msg.To.Add("abcd@g.com")</div>
<div>
<br /></div>
<div>
$msg.subject = "Failed Timer Jobs of --- Servers"</div>
<div>
<br /></div>
<div>
$msg.body = "Hi Team, Please find Attachment of Failed Jobs of ---- Servers"</div>
<div>
<br /></div>
<div>
$msg.Attachments.Add($att)</div>
<div>
<br /></div>
<div>
#Sending email </div>
<div>
<br /></div>
<div>
$smtp.Send($msg)</div>
<div>
<br /></div>
<div>
Write-Host "Email Sent"</div>
<div>
</div>
<div>
$att.Dispose()</div>
<div>
}</div>
<div>
function sendMail1{</div>
<div>
<br /></div>
<div>
#SMTP server name</div>
<div>
$smtpServer = "fill the smtpserver"</div>
<div>
<br /></div>
<div>
#Creating a Mail object</div>
<div>
$msg = new-object Net.Mail.MailMessage</div>
<div>
<br /></div>
<div>
#Creating SMTP server object</div>
<div>
$smtp = new-object Net.Mail.SmtpClient($smtpServer)</div>
<div>
<br /></div>
<div>
#Email structure </div>
<div>
$msg.From = "sharepoint2013@g.com"</div>
<div>
<br /></div>
<div>
</div>
<div>
$msg.CC.Add("abcdef@g.com")</div>
<div>
<br /></div>
<div>
$msg.To.Add("abcd@g.com")</div>
<div>
<br /></div>
<div>
$msg.subject = "Failed stopping/Starting SharePoint Timer Service"</div>
<div>
<br /></div>
<div>
$msg.body = "Hi Team, SharePoint Timer Service not stopped/started in ---- Servers"</div>
<div>
<br /></div>
<div>
#Sending email </div>
<div>
<br /></div>
<div>
$smtp.Send($msg)</div>
<div>
<br /></div>
<div>
Write-Host "Email Sent"</div>
<div>
</div>
<div>
</div>
<div>
}</div>
<div>
<br /></div>
<div>
$fjobs = $tservice.JobHistoryEntries | ?{$_.Status -eq "Failed"} | Where-Object {$_.StartTime.day -eq $a.day -and $_.StartTime.month -eq $a.month} </div>
<div>
<br /></div>
<div>
$fjobs | select JobDefinitionTitle,Status,ServerName,StartTime,EndTime,ErrorMessage |Export-Csv -Delimiter ',' -Path D:\failedjobs.csv </div>
<div>
<br /></div>
<div>
foreach($j in $fjobs)</div>
<div>
{</div>
<div>
$tj= $j</div>
<div>
}</div>
<div>
<br /></div>
<div>
if($tj.Status -eq "Failed")</div>
<div>
{</div>
<div>
<br /></div>
<div>
sendMail</div>
<div>
$sts = Get-Service -DisplayName "SharePoint Timer Service"</div>
<div>
net stop $sts</div>
<div>
<br /></div>
<div>
$sts.WaitForStatus('Stopped','00:00:05')</div>
<div>
<br /></div>
<div>
if ($sts.Status -ne 'Stopped')</div>
<div>
{</div>
<div>
sendMail1</div>
<div>
}</div>
<div>
else</div>
<div>
{</div>
<div>
net start $sts</div>
<div>
}</div>
<div>
<br /></div>
<div>
}</div>
<div>
else</div>
<div>
{</div>
<div>
Write-Host " No failed Jobs Today"</div>
<div>
}</div>
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Note: I hope, It will help who have same kind of scenario.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-67129264156468248702013-06-04T14:29:00.003+05:302013-06-04T14:29:45.348+05:30What is SkyDrivePro in SharePoint 2013<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
With the release of SharePoint 2013 came a new feature that has proven to confuse almost everyone, SkyDrive Pro. The confusion lies with another Microsoft product called SkyDrive that is completely unrelated to SharePoint. Confused as well? You’re not the only one and you shouldn’t feel bad about it, I have talked with people that make a living with SharePoint who are just as confused. I am writing this to answer some of the many questions I get when speaking on SharePoint 2013 “<a href="http://en.share-gate.com/blog/what-people-want-from-sharepoint-2013" style="color: #f47321; text-decoration: none;">What People want from SharePoint 2013</a>”.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
First, there was SkyDrive</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Let’s start with the one everyone knows, SkyDrive. SkyDrive is free to the public; anyone can have a SkyDrive account it is usually attached to your Hotmail, Live or Outlook.com account.</div>
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/F97BFF39AC414E488E0DB0A0865364AB.ashx" style="background-color: #f8f9f9; border: 0px; color: #333333; font-family: Arial; font-size: 14px; height: 387px; line-height: 16px; width: 595px;" /><span style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px;"></span><br />
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
SkyDrive is a place somewhere in the “cloud” as some would say. Essentially, a place where you can store your files without having to worry about it and Microsoft is taking care of the storage for you. A competitor to the very popular service called Dropbox.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<br /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/0FB2FDAEEB7246049DCEFEC6F2C9892E.ashx" style="border: 0px; height: 57px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
If we try to simply the service, because I could write quite a bit just on SkyDrive, you can put your files there and share them with others. After adding your files on SkyDrive, you assign “Public”, “View” or “View and Edit” permissions and generate a hyperlink for people to access the files or folders. You do have 7GB of storage, though you can always purchase more. There are a few other fun features like commenting on files and folders but this is not the focus of my article.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
Do you remember the SharePoint “My Sites”?</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
These became popular with SharePoint 2010 though in many cases, it wasn’t really used to its full potential. The same goes for SharePoint 2007 where it was even less popular. The way I see it, <strong>My Sites is the new “My Documents”</strong> found on our computers.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
In SharePoint 2013, we still have the concept of My Sites.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/8381D7DD5DE24661B68F6CF4BDF5F86A.ashx" style="border: 0px; height: 366px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>SharePoint My Sites:</strong></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
If activated, it allows users in your organization to have a “personal” environment, sort of speak. It creates a SharePoint Site Collection for every user that uses a My Site. This Site Collection comes with a few things including a Blog subsite, a Tasks List and of course… a Document Library.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Teaser: <strong>This Document Library is what some confuse with “SkyDrive Pro”.</strong></div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
The SkyDrive link in the Top Bar of SharePoint 2013</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
So why did I talk about the My Sites earlier if we are covering SharePoint 2013 SkyDrive Pro exactly? Well, we established that when you create a My Site as a user, you get your own Site Collection, which includes a Site with a Documents Library amongst other things. The SkyDrive hyperlink at the top is just a link to this Document Library.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/8439BDC8C95A4155A00F4BE7376934AB.ashx" style="border: 0px; height: 286px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
If you look at this screenshot, you’ll notice that after I clicked on the SkyDrive link, I arrived to my so-called “SkyDrive Pro” which, if we look at the url, really just is my Document Library. Here is the fun part, <strong>this is still not SkyDrive Pro</strong>, all it is, is a hyperlink with the name SkyDrive to a personal Document Library.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
SkyDrive Pro – The document synchronization service</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
SkyDrive Pro is not really something that comes with SharePoint 2013. It actually comes with Microsoft Office 2013 and very recently as a standalone download from the Microsoft site.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Let’s take the Document Library in our personal My Site for example, which is called SkyDrive Pro in many places. SharePoint 2013 has a new “Sync” button that tells your installed SkyDrive Pro to launch and sync with this document library to make the documents available offline and on your desktop.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/70102B94B37C46788E276D4CB4D82AF5.ashx" style="border: 0px; height: 285px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Once you click on it, SkyDrive Pro will launch</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/7F8FC2B7FD664D5AB7F330AFB017148A.ashx" style="border: 0px; height: 434px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
and will allow you to Sync this Document Library to the specified location.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
The result:</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/1DF8E7855241411587E0713BECE1F340.ashx" style="border: 0px; height: 402px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>So is this SkyDrive Pro?</strong></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Well this is what I am trying to explain; SkyDrive Pro isn’t a specific Document Library or place in SharePoint. It’s the service that runs on your computer that does the Sync job for you. You can even launch SkyDrive Pro from the start menu. </div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" height="73" src="http://en.share-gate.com/blog/~/media/52E07AE2D88F48898F1C6DDF51571A3D.ashx" style="border: 0px;" width="480" /></div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
SkyDrive Pro can be used with almost every Document Library</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Right now we established that there is a public service called SkyDrive and that there is also a link called SkyDrive in SharePoint that actually points to your Document Library in your My Site. Then, we looked at a “Sync” button that launches your installed SkyDrive Pro service to Sync that Document Library to your Desktop.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
But, what about other Document Libraries? </div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
The Sync button is contextual to the url or where you are when you click it. So if I go to my Team Site and click on Sync, it will want to Sync with the Document Library there. If I go to a specific Document Library and click on Sync, then it will want to Sync with that Library. Let’s see.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<br /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/FD89E98A658E4C13A0F38D28990415CD.ashx" style="border: 0px; height: 347px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
The only difference with the Document Library from your My Site is that this one will not be stored under SkyDrive Pro in your Favorites but under SharePoint.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/70BC0188C7FD4B83BF233E7F56A8D18B.ashx" style="border: 0px; height: 339px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
But it’s still SkyDrive Pro on your computer doing everything and making it happen.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
Prevent Document Libraries from being sync’ed with SkyDrive Pro</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
If you do not wish for a Document Library to be available to Sync through SkyDrive Pro, there is an option in the Advanced Settings of a Document Library.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/C2790E8604AF400CA19794A7EF227F2D.ashx" style="border: 0px; height: 102px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Once set to no, the Sync button for the Document Library will not longer be available.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/74D7A36DE0A34C70BD268D2AE17CF8AA.ashx" style="border: 0px; height: 222px; width: 595px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<br /></div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
Launching SkyDrive Pro from your Computer</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
The SkyDrive Pro client on your computer can also be launched and used to browse your Site and available document Libraries.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Once launched, it will appear in your tray as an icon with blue clouds. You can use it to Sync to a new Library by right clicking and selecting “Sync a new Library”.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/E37F0AB67ACA4ADFA4B3E6D1C1D7C502.ashx" style="border: 0px; height: 393px; width: 461px;" /></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
This will launch a new menu where you can enter a SharePoint 2013 url and select a Document Library to Sync.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<img alt="What is SkyDrive Pro in SharePoint 2013" src="http://en.share-gate.com/blog/~/media/EAD586432F9147DDB5B606014C074230.ashx" style="border: 0px; height: 381px; width: 595px;" /></div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
Problem with the terminology and things to know</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Let’s try to put everything we learned in an easy summarized view.<strong> </strong></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>SkyDrive: </strong>A free online service offered by Microsoft that lets you store and share files and folders. It has nothing to do with SharePoint.<strong> </strong></div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>My Site:</strong> This is not SkyDrive Pro; it’s still your My Site which is a Site Collection owned by the User. </div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>SkyDrive Pro (the link): </strong>In SharePoint 2013 there is a link at the top called SkyDrive which points to the Document Library in your My Site. Once “Sync’ed” it will appear in your Computer by using the application SkyDrive Pro installed by Office 2013 or standalone. This Document Library will appear as “SkyDrive Pro” in your local “Favorites” which can lead to confusion.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>The Real SkyDrive Pro:</strong> A synchronization service installed by Office 2013 or standalone from the Microsoft download site. Once installed it will allow you to Sync any Document Library from SharePoint 2013 or Office 365 to your Computer. These will then appear in your Windows Explorer under “Favorites”.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
Things to know</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>SkyDrive Pro is not a Migration Tool:</strong> Just because you can drag and drop files to SharePoint using SkyDrive Pro does not mean it is a migration tool for content. You will want to preserve the authors and timestamps (created, created by, modified, modified by). This is something SkyDrive Pro will not due while copying your files.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>Work Offline:</strong> When it Syncs your files from SharePoint 2013 to your Computer, the files are actually copied. This lets users work offline. SkyDrive Pro is the new Groove 2007 and SharePoint Workspace 2010 but simplified. </div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
<strong>Stopping a Sync: </strong>Important to know, especially for security reasons is that files that were copied by a Sync with SkyDrive Pro will stay on the users computer once the Sync is stopped.</div>
<h2 style="background-color: #f8f9f9; color: #f37321; font-family: AllerRegular, Arial, Helvetica, sans-serif; font-size: 20px; line-height: 22px; margin: 0px 0px 10px; padding: 0px;">
The real challenge for you</h2>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
You’ll have to see how you will take on this confusion within your own organization. Microsoft has opted to call the Document Library in your My Site “SkyDrive Pro” in hope to keep the confusion to a minimum no doubt. This would probably help users think of SkyDrive as the free service and SkyDrive Pro a similar service but with files and folders stored in their own corporate Document Library on SharePoint 2013 or even Office 365.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
Everything will depend on how you bring this terminology in. If you are migrating to SharePoint 2013 or Office 365 this is something you’ll want to make sure is understood beforehand by your Power Users.</div>
<div style="background-color: #f8f9f9; color: #333333; font-family: Arial; font-size: 14px; line-height: 16px; margin-bottom: 25px; margin-top: 5px; padding: 0px;">
I wrote this article because I saw a lot of confusion both online and during my conference sessions on SharePoint 2013. I wrote an article “<a href="http://en.share-gate.com/blog/what-people-want-from-sharepoint-2013" style="color: #f47321; text-decoration: none;">What People want from SharePoint 2013</a>” which covers many other questions and uncertainties I have noticed.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-2289719211338899662013-06-04T14:28:00.004+05:302013-06-04T14:53:33.473+05:30Migration On SharePoint 2007 To 2010<div dir="ltr" style="text-align: left;" trbidi="on">
<strong><span style="text-decoration: underline;">Step 1:</span> Move the site
to a new web application in SharePoint 2007</strong><br />
<strong><br /></strong>
<br />
<div style="padding-left: 30px;">
Let's say we want to migrate the SharePoint site
at<strong> http://duyfarm/TeamSite.</strong></div>
<ol>
<li>First, create a new Web application and blank site collection (for example:
<b>http://duyfarm:6789</b>). <br />
</li>
<li><a href="http://www.blogger.com/blogger.g?blogID=2561841574952183034">Login to the SharePoint server using an account that has the following
rights/permissions:</a>
<ul>
<li>SharePoint Farm Admin.
</li>
<li>Local Administration rights on the Web server.
</li>
<li><b>db_owner</b> permission on the content databases.
</li>
<li>Make sure the access account has access to the site content (sometimes farm
admin might not be a site collection admin). </li>
</ul>
</li>
<li>Open Command Prompt and change directory to
<b>%COMMONPROGRAMFILES%\Microsoft shared\web server extensions\12\bin</b>, then
run the following STSADM commands: <span style="color: #99cc00;"><b><span style="color: black;">stsadm -o export -url <URL name> -filename
<export file name> -includeusersecurity</span></b></span></li>
</ol>
<ol><span style="color: #99cc00;"><strong></strong></span><img alt="" border="0" height="50" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-01.png" width="400" /></ol>
<ol><br /><strong>stsadm -o import -filename
<import file name> -url <URL name>
-includeusersecurity</strong></ol>
<ol><strong><span style="color: #99cc00;"></span></strong><b><img alt="" border="0" height="54" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-02.png" width="400" />
</b></ol>
<br />
The imported Web application might look like this:<br />
<br />
<img alt="" border="0" height="400" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-03.png" width="354" /><br />
<br />
<strong><span style="text-decoration: underline;">Step 2:</span> Copy the
content database backup to the SharePoint 2010 SQL server</strong><br />
<ol>
<li>Open <b>Microsoft SQL Server Management Studio</b>. Right-click on the
content database and select <b>Tasks</b> > <b>Backup...\</b></li>
<li><img alt="" border="0" height="281" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-04.png" width="400" />
<br /><br />
</li>
<li>Enter the <b>Backup Name,</b> select <b>Destination</b>, and click <b>OK</b>
to start.<br /><img alt="" border="0" height="358" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-05.png" width="400" />
<br /><br />
</li>
<li>Copy this backup file to the SharePoint 2010 SQL server. </li>
</ol>
<br />
<strong><span style="text-decoration: underline;">Step 3:</span> Mount the
content database to the SharePoint 2010 server</strong><br />
<ol>
<li>On the <b>SharePoint 2010 server</b>, create a new empty Web application.
For example: <b>http://duyfarm2010:6789</b>.
</li>
<li>If you have any custom components on the original site, install them to this
Web application now.
</li>
<li>After that, we can restore the SharePoint 2007 backup to SharePoint 2010 SQL
Server. Open <b>Microsoft SQL Server Management Studio</b>. Right-click on
<b>Databases</b> and select <b>Restore Database...</b></li>
<li><b><img alt="" border="0" height="360" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-06.png" width="400" /></b>
<br /><br />
</li>
<li>Enter the new <b>database name</b>, making sure that you don't overwrite the
original content database. Select the <b>Source</b> and click <b>OK</b> to
start.<img alt="" border="0" height="359" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-07.png" width="400" />
<br /><br />
</li>
<li>Open <b>SharePoint 2010 Management Shell</b> and dismount the current SP2010
content database.<br /><strong><span style="color: #99cc00;"><span style="color: black;">Dismount-SPContentDatabase
<ContentdBName></span><img alt="" border="0" height="96" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-08.png" width="400" /></span></strong>
<br /><br />
</li>
<li>Verify that we have all the needed custom components. If there are any
errors, make sure you correct them before mounting the SP2007 content
database.<br /><strong>Test-SPContentDatabase -Name
<DatabaseName> -WebApplication <URL></strong>
<br /><br />
</li>
<li>My test shows no error, so we are ready to run the Mount-SPContentDatabase
cmdlet. This cmdlet also upgrades the SP2007 content to SP2010.<br /><strong><span style="color: #99cc00;"><span style="color: black;">Mount-SPContentDatabase
<ContentDb> -WebApplication http://SiteName</span><img alt="" border="0" height="126" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-10.png" width="400" /></span></strong>
<br /><br />
</li>
<li>After this process has completed, you need to review the log files (the
upgraded log file and error log file) to make sure there are no errors. The log
files are located at <b>%COMMONPROGRAMFILES%\Microsoft Shared\web server
extensions\14\LOGS</b>. The logs are named in the following format:
Upgrade-YYYYMMDD-HHMMSS-SSS-error.log and Upgrade-YYYYMMDD-HHMMSS-SSS.log, where
YYYYMMDD is the date and HHMMSS-SSS is the time (hours in 24-hour clock format,
minutes, seconds, and milliseconds). If there are errors at this time, they will
most likely be due to some customization done on the SharePoint 2007 server.
</li>
</ol>
<br />
We have finally finished the migration process. Notice that after our upgrade
is completed, the new site looks exactly like it was in SharePoint 2007. In
SharePoint 2010, there is a feature called <b>Visual Upgrade</b> that gives you
an option to switch between SharePoint 2007 look and feel or the SharePoint 2010
view. Note that if you have customized themes on the old site, you must
re-create the new theme on the new site before you can switch. To switch over
to the new SharePoint 2010 look, do this: <br />
<ul>
<li>Login as <b>Site Owner</b> and select <b>Site Actions > Visual
Upgrade</b><b>.<br /><img alt="" border="0" height="348" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-11.png" width="400" /></b>
</li>
</ul>
<strong></strong><br />
<ul>
<li>Select <b>Update the user interface.</b> Click <strong>OK</strong>.<br /><img alt="" border="0" height="400" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-12.png" width="327" />
</li>
</ul>
<br />
Here is the SharePoint 2010 look and feel:<br />
<img alt="" border="0" height="376" src="http://community.bamboosolutions.com/resized-image.ashx/__size/700x0/__key/CommunityServer.Blogs.Components.WeblogFiles/sharepoint-2010/migrate-13.png" width="400" /><br />
<br />
<b>Notes:</b><br />
<br />
<ul>
<li>The database attach method works with both SharePoint 2010 Foundation and
Server.
</li>
<li>Limitations of the export/import method are:
<ul>
<li>You cannot save a workflow, alerts, features, solutions, or Recycle-Bin
state by using the export operation.
</li>
<li>Stsadm only supports moving entire Web sites (SPWeb instances). You are not
able to export selected items or lists.
</li>
<li>You cannot retain object globally unique identifiers (GUIDs) when you
migrate site objects. New identifiers are added at the migration target. </li>
</ul>
</li>
</ul>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-72090678100972879982013-05-27T17:34:00.003+05:302013-05-27T17:34:55.085+05:30Main Difference of SharePoint Migration( 2007 to 2010 and 2010 to 2013)<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
Instead, you attach a 2010 content database to the 2013 farm. You have the option of <b>retaining the content database as a 2010 content database</b> and to perform what is called a “<b>deferred site collection upgrade</b>.” In essence, this means that the 2010 site collection continues to be a 2010 site collection, just running on a 2013 farm. This is very different than the “visual upgrade” from 2007 to 2010. When you upgraded from 2007 to 2010, the site was upgraded, which meant you had to ensure compatibility. But a master page and other trickery made the site retain the appearance of a 2007 site. In 2013, that option no longer exists. Instead, the 2013 farm retains the 2010 “14 Hive”—with all of its features, site definitions, etc.</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
So, in theory, all of your 2010 sites will work perfectly well, customization included, in 2013. When you perform a deferred site collection upgrade, you are conceptually “flipping the switch” so that the site collection now runs against the “15 hive”. That is when compatibility might matter.</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
So, keeping this very high level, the theory is that you could upgrade your farm this weekend to 2013, and your users would be none the wiser. That’s certainly the type of platform upgrade path that Microsoft wants and needs in the cloud (Office 365).</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
We will see, shortly, just how well it works in the real world. But my guess is we will be much closer to a happy story than to an unhappy story. And, obviously, you will want to test the upgrade process before you actually perform it. But the bottom line is that we’re close to a point where upgrading the platform will become a non-issue, a very minor issue, or at least not a multi-month, insane project.</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
Because you are likely going to find that you can upgrade smoothly, you can move collaboration workloads from 2010 to 2013 quickly, or implement plans for 2010 in 2013 instead, as 2013 still supports 2010-style customization, workflows, etc.</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
You can learn more about upgrading to SharePoint 2013 in the <b><a href="http://sharepointinfoprovider.blogspot.sg/2013_05_01_archive.html" target="_blank">Reference Link</a>.</b> As with all other upgrades, there’s no direct upgrade path from 2007 or earlier versions of SharePoint to 2013. You either have to go through 2010 on the way, or use a third party tool. And—knowing that you probably did things in 2007 that you would not choose to do the same way in 2013—I’d strongly recommend a good third party migration tool.</div>
<div style="background-color: white; color: #333333; font-family: Georgia, Times, 'Times New Roman', serif; font-size: 15px; line-height: 1.48em; margin-bottom: 1em; margin-top: 1em;">
This should give you plenty to chew on for the next few days. Next week, we’ll look at some of the reasons people give me for not moving to SharePoint 2013, including the infamous “we always wait for Service Pack 1” argument. So this discussion is definitely not finished. See you next week!</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-15585353829095085272013-05-27T17:16:00.004+05:302013-05-27T17:16:30.987+05:30SharePoint 2010 to 2013 Upgrade Overview<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
To upgrade from SharePoint 2010 Products to SharePoint 2013, you use the database-attach method to upgrade. In the database-attach method, you first create and configure a SharePoint 2013 farm. Then you copy the content and service application databases from the SharePoint 2010 Products farm, and then attach and upgrade the databases. This upgrades the data to the new version. Site owners can then upgrade individual site collections.</div>
<div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
</div>
<div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
<strong>Figure: The sequence of upgrade stages</strong></div>
<img alt="Stages in upgrade process for SharePoint 2013" id="c34ddda7-9e3f-4686-a811-4e5a42c14a97" src="http://i.technet.microsoft.com/dynimg/IC632355.gif" style="border: 0px; color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;" title="Stages in upgrade process for SharePoint 2013" xmlns="" /><span style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;"></span><div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
</div>
<div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
Note: This article applies to both SharePoint Foundation 2013 and SharePoint Server 2013, except for information about how to upgrade My Sites and specific service applications that are only in SharePoint Server 2013.</div>
<div style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 18px; padding-bottom: 15px;">
<span style="font-size: 1.692em; line-height: 1.167;">Create the SharePoint 2013 farm</span></div>
<div class="section" id="section44" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;">
<div style="line-height: 18px; padding-bottom: 15px;">
The first stage in the upgrade process creates the new SharePoint 2013 farm:</div>
<ol class="ordered">
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator installs SharePoint 2013 to a new farm. The administrator configures farm settings and tests the environment.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator sets the SharePoint 2010 Products farm to read-only so that users can continue to access the old farm while upgrade is in progress on the new farm.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Create new farm, set old farm to read-only</strong></div>
<img alt="Create new farm, set old farm to read-only" id="347f938d-3a0f-4492-9eaf-27017532a1aa" src="http://i.technet.microsoft.com/dynimg/IC633015.gif" style="border: 0px;" title="Create new farm, set old farm to read-only" xmlns="" /></li>
</ol>
</div>
<a href="" id="CopyDatabases" style="color: #00749e; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;"></a><h1 class="heading" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 1.692em; font-weight: normal; line-height: 1.167; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
Copy the SharePoint 2010 Products databases</h1>
<div class="section" id="section57" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;">
<div style="line-height: 18px; padding-bottom: 15px;">
The second stage in the upgrade process copies the databases to the new environment. You use SQL Server Management Studio for these tasks.</div>
<ol class="ordered">
<li><div style="line-height: 18px; padding-bottom: 15px;">
With the farm and databases in read-only mode, a server farm administrator backs up the content and service application databases from the SQL Server instance on the SharePoint 2010 Products farm.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
The server farm administrator restores a copy of the databases to the SQL Server instance on the SharePoint 2013 farm and sets the databases to read-write on the new farm.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Use SQL Server tools to copy databases</strong></div>
<img alt="Use SQL Server tools to copy databases" id="4f796624-55bb-404f-9718-acdda2fbb161" src="http://i.technet.microsoft.com/dynimg/IC632611.gif" style="border: 0px;" title="Use SQL Server tools to copy databases" xmlns="" /></li>
</ol>
</div>
<a href="" id="Databases" style="color: #00749e; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;"></a><h1 class="heading" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 1.692em; font-weight: normal; line-height: 1.167; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
Upgrade SharePoint 2010 Products databases and service applications</h1>
<div class="section" id="section70" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;">
<div style="line-height: 18px; padding-bottom: 15px;">
The third stage in the upgrade process upgrades the databases and service applications.</div>
<ol class="ordered">
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator configures the service applications for the new farm. The following service applications have databases that you can upgrade during this process:</div>
<ul>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
SharePoint Server 2010 and SharePoint Foundation 2010</div>
<ul>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
Business Data Connectivity service application</div>
</li>
</ul>
</li>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
SharePoint Server 2010 only</div>
<ul>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
Managed Metadata service application</div>
</li>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
PerformancePoint Services service application</div>
</li>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
Search service application</div>
</li>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
Secure Store Service application</div>
</li>
<li class="unordered" style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
User Profile service application</div>
</li>
</ul>
</li>
</ul>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator creates a web application on the SharePoint 2013 farm for each web application on the SharePoint 2010 Products farm.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Create web applications for upgrade</strong></div>
<img alt="Create Web applications for upgrade" id="b194620e-91c7-40b1-8173-7e48af381dec" src="http://i.technet.microsoft.com/dynimg/IC632612.gif" style="border: 0px;" title="Create Web applications for upgrade" xmlns="" /></li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator installs all server-side customizations.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Copy customizations to the new farm</strong></div>
<img alt="Copy customizations to new farm" id="895e632b-e716-438f-b02f-69b069e96f29" src="http://i.technet.microsoft.com/dynimg/IC633016.gif" style="border: 0px;" title="Copy customizations to new farm" xmlns="" /></li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator then attaches the content databases to the new farm and upgrades the content databases for those web applications.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Upgrade the databases by using Windows PowerShell</strong></div>
<img alt="Upgrade the databases with Windows PowerShell" id="af4eeffc-af5f-4bc3-b422-801c190c05bd" src="http://i.technet.microsoft.com/dynimg/IC632614.gif" style="border: 0px;" title="Upgrade the databases with Windows PowerShell" xmlns="" /></li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator confirms that the upgrade is successful.</div>
</li>
</ol>
</div>
<a href="" id="UpgradeSites" style="color: #00749e; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17px;"></a><h1 class="heading" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 1.692em; font-weight: normal; line-height: 1.167; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
Upgrade SharePoint 2010 Products site collections</h1>
<div class="section" id="section116" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; line-height: 17px;">
<div style="font-size: 13px; line-height: 18px; padding-bottom: 15px;">
The final stage in the upgrade process is to upgrade the site collections. In SharePoint 2013, site owners are in charge of upgrading their sites. The upgrade process for My Sites is slightly different from for other types of site collections.</div>
<span style="font-size: x-small;"><a href="" id="MySites" style="color: #00749e;"></a></span><h4 class="subHeading" style="font-size: 1.231em; margin: 0px;">
Upgrade My Sites</h4>
<div style="font-size: 13px;">
<br /></div>
<div style="font-size: 13px;">
<b>Note: <span style="font-size: small; line-height: 18px;">This section applies to SharePoint Server 2013 only.</span></b></div>
<div style="font-size: 13px;">
<b><span style="font-size: small; line-height: 18px;"><br /></span></b></div>
<div class="subSection" style="font-size: 13px;">
<div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator upgrades the My Site host and then individual users can upgrade their My Sites or the farm administrator can upgrade them by using Windows PowerShell. The following illustration shows four stages for the My Site host and My Sites during the upgrade process.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Figure: Stages in upgrading My Sites</strong></div>
<img alt="Stages in upgrading My Sites" id="669dabdc-b262-4cb2-98ac-c452e3d55ea7" src="http://i.technet.microsoft.com/dynimg/IC632615.gif" style="border: 0px;" title="Stages in upgrading My Sites" xmlns="" /><ol class="ordered">
<li><div style="line-height: 18px; padding-bottom: 15px;">
The My Site host has not been upgraded. My Sites cannot be upgraded yet.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator has upgraded the My Site host. No My Sites have been upgraded.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
Some users have upgraded their My Sites.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
All My Sites have been upgraded.</div>
</li>
</ol>
</div>
<span style="font-size: x-small;"><a href="" id="SiteCollections" style="color: #00749e;"></a></span><h4 class="subHeading" style="font-weight: normal; margin: 0px;">
<span style="font-size: x-small;">Note: <span style="line-height: 18px;">A server farm administrator can choose to force an upgrade of My Sites without waiting for users to upgrade them.</span></span></h4>
<div style="font-size: 13px;">
<span style="font-size: small; line-height: 18px;"><br /></span></div>
<h4 class="subHeading" style="font-size: 1.231em; font-weight: normal; margin: 0px;">
Upgrade other SharePoint 2010 Products site collections</h4>
<div>
<br /></div>
<div class="subSection" style="font-size: 13px;">
<div style="line-height: 18px; padding-bottom: 15px;">
Owners of all other site collections can start to upgrade their sites as soon as they see a notification on their site's home page that the new version is available. The following illustration shows four stages for a site collection during the upgrade process.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
<strong>Stages in upgrading site collections</strong></div>
<img alt="Stages in upgrading site collections" id="003ea0e5-46dc-4097-b5d3-e8577d5d36a2" src="http://i.technet.microsoft.com/dynimg/IC632616.gif" style="border: 0px;" title="Stages in upgrading site collections" xmlns="" /><ol class="ordered">
<li><div style="line-height: 18px; padding-bottom: 15px;">
The site owner runs the site collection health checks to determine readiness for upgrade. The site owner addresses issues before they continue with the next step.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
Optionally, the site owner requests an upgrade evaluation site collection. A timer job runs to create the site collection and the site owner receives an email message when the evaluation site collection is ready. The site owner previews the new user interface. After several days or weeks, the evaluation site collection expires and is deleted by a timer job.</div>
<div style="line-height: 18px; padding-bottom: 15px;">
A server farm administrator can determine the length of time before expiration.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
When the site owner is ready, the site owner starts the upgrade process. The site collection health checks are run again automatically. The site owner must address issues before upgrading. If health checks return no issues, the upgrade starts.</div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
When upgrade is complete, the site owner sees the Upgrade Status page that contains the status and a link to the upgrade logs. The site owner reviews the site to make sure that everything works correctly.</div>
</li>
</ol>
</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-74438953140905960762013-05-15T12:39:00.003+05:302013-05-15T13:30:53.880+05:30Java Script For Page Referesh<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="background-color: white; font-family: verdana, helvetica, arial, sans-serif; font-size: 11px; text-align: justify;">
You can also use JavaScript to refresh the page automatically after a given time period. Following is the example which would refresh this page after every 5 seconds. You can change this time as per your requirement.</div>
<br /><table border="1" cellpadding="5" cellspacing="5" class="src" style="background-color: #f1f1f1; border-collapse: collapse; border: 1px solid rgb(170, 170, 170); color: black; font-family: verdana, helvetica, arial, sans-serif; font-size: 11px; padding-left: 5px; vertical-align: top; width: 552px;"><tbody>
<tr><td style="border-collapse: collapse; border: 1px solid rgb(170, 170, 170); margin-bottom: 0px; vertical-align: top;"><pre style="font-family: 'Courier New', monospace; font-size: 12px;"><html>
<head>
<script type="text/JavaScript">
<!--
function AutoRefresh( t ) {
setTimeout("location.reload(true);", t);
}
// -->
</script>
</head>
<body onload="JavaScript:AutoRefresh(5000);">
<p>This page will refresh every 5 seconds.</p>
</body>
</html>
</pre>
</td></tr>
</tbody></table>
<br />
<div style="background-color: white; font-family: verdana, helvetica, arial, sans-serif; font-size: 11px; text-align: justify;">
Here <i>setTimeout()</i> is a built-in JavaScript function which can be used to execute another function after a given time interval.</div>
<div style="background-color: white; font-family: verdana, helvetica, arial, sans-serif; font-size: 11px; text-align: justify;">
<br /></div>
<div style="background-color: white; font-family: verdana, helvetica, arial, sans-serif; font-size: 11px; text-align: justify;">
To understand it in better way you can <a href="http://www.tutorialspoint.com/cgi-bin/practice.cgi?file=javascript_221" style="background-color: transparent; color: #900b09;" target="_blank">Try it yourself</a>.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-76423847761952837562013-05-09T20:56:00.001+05:302013-05-09T20:56:25.535+05:30Sharepoint - The search request was unable to connect to the Search Service.<div dir="ltr" style="text-align: left;" trbidi="on">
Follow the below methods:<br />
<br />
Central Admin -> Service Applications ->Manage service applications make sure your search service application is running with a proxy just below it. If not, likely because you did a backup and the proxy requires a second backup, from the ribbon select New -> Search Service Application.<br />
<br />
Once created successfully go to CA -> Web Applications -> Manage web applications. Highlight the sharepoint port 80 site and select Service Connections. Make sure your new proxy is selected.<br />
<br />
Then under CA -> Application Mgmt -> Manage services on server select Sharepoint Server Search select the new service you setup and make sure the topology looks ok. Then schedule and start a new Full crawl. All set.<br />
<br />
AND<br />
<br />
Don't forget to add the pdf file type if you've set that up under the old search app before.<br />
-----------------------------------------------------------------------------------------------------------<br />
<br />
Central Admin > Application Management > Office SharePoint Server Shared Services > Create or Configure this farm’s shared services<br />
Shared Services Provider (drop down) > Edit Properties<br />
Edit Shared Services Provider > Index Server: Verify the index server is set<br />
<br />
Single Server Farm<br />
<br />
On the MOSS 2007 server:<br />
<br />
Start > Run > CMD > stsadm.exe -o osearch -action stop<br />
Start > Run > CMD > stsadm.exe -o osearch -action start -role query index<br />
<br />
Multiple Server Farm<br />
<br />
On the MOSS 2007 Front End Web/Query server:<br />
<br />
Start > Run > CMD > stsadm.exe -o osearch -action stop<br />
<br />
On the MOSS 2007 Index server:<br />
<br />
Start > Run > CMD > stsadm.exe -o osearch -action stop<br />
<br />
On the MOSS 2007 Index server:<br />
<br />
Start > Run > CMD > stsadm.exe -o osearch -action start -role index<br />
<br />
On the MOSS 2007 Front End Web/Query server:<br />
<br />
Start > Run > CMD > stsadm.exe -o osearch -action start -role query<br />
<br />
Go to Central Admin ->Operations ->Topologies and services ->Services on server<br />
Click “Office SharePoint Server Search”<br />
Make sure the user has sufficient permission to access database.<br />
Note: If your Search query and indexing server are same then set both options “Use this server for indexing content” and “Use this server for serving search queries” to true.<br />
<br />
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-15982732201134837162013-05-06T19:51:00.001+05:302013-05-06T19:51:03.123+05:30What is page redirection ?<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<h2>
<br /></h2>
When you click a URL to reach to a page X but internally you are directed to
another page Y that simply happens because of page re-direction. This concept is
different from <a href="http://www.tutorialspoint.com/javascript/javascript_page_refresh.htm" title="JavaScript Page Refresh">JavaScript Page Refresh</a>.<br />
There could be various reasons why you would like to redirect from original
page. I'm listing down few of the reasons:<br />
<ul>
<li>
You did not like the name of your domain and you are moving to a new one.
Same time you want to direct your all visitors to new site. In such case you can
maintain your old domain but put a single page with a page re-direction so that
your all old domain visitors can come to your new domain.</li>
<li>
You have build-up various pages based on browser versions or their names or
may be based on different countries, then instead of using your server side page
redirection you can use client side page redirection to land your users on
appropriate page.</li>
<li>
The Search Engines may have already indexed your pages. But while moving to
another domain then you would not like to lose your visitors coming through
search engines. So you can use client side page redirection. But keep in mind
this should not be done to make search engine a fool otherwise this could get
your web site banned.</li>
</ul>
<h2>
How Page Re-direction works ?</h2>
<h2>
Example 1:</h2>
This is very simple to do a page redirect using JavaScript at client side. To
redirect your site visitors to a new page, you just need to add a line in your
head section as follows:<br />
<table border="1" cellpadding="5" cellspacing="5" class="src">
<tbody>
<tr>
<td><pre><head>
<script type="text/javascript">
<!--
window.location="http://www.newlocation.com";
//-->
</script>
</head>
</pre>
</td></tr>
</tbody></table>
To understand it in better way you can <a href="http://www.tutorialspoint.com/cgi-bin/practice.cgi?file=javascript_27" target="_blank">Try it
yourself</a>.<br />
<h2>
Example 2:</h2>
You can show an appropriate message to your site visitors before redirecting
them to a new page. This would need a bit time delay to load a new page.
Following is the simple example to implement the same:<br />
<table border="1" cellpadding="5" cellspacing="5" class="src">
<tbody>
<tr>
<td><pre><head>
<script type="text/javascript">
<!--
function Redirect()
{
window.location="http://www.newlocation.com";
}
document.write("You will be redirected to main page in 10 sec.");
setTimeout('Redirect()', 10000);
//-->
</script>
</head>
</pre>
</td></tr>
</tbody></table>
Here <i>setTimeout()</i> is a built-in JavaScript function which can be used
to execute another function after a given time interval.<br />
To understand it in better way you can <a href="http://www.tutorialspoint.com/cgi-bin/practice.cgi?file=javascript_28" target="_blank">Try it
yourself</a>.<br />
<h2>
Example 3:</h2>
Following is the example to redirect site visitors on different pages based
on their browsers :<br />
<table border="1" cellpadding="5" cellspacing="5" class="src">
<tbody>
<tr>
<td><pre><head>
<script type="text/javascript">
<!--
var browsername=navigator.appName;
if( browsername == "Netscape" )
{
window.location="http://www.location.com/ns.htm";
}
else if ( browsername =="Microsoft Internet Explorer")
{
window.location="http://www.location.com/ie.htm";
}
else
{
window.location="http://www.location.com/other.htm";
}
//-->
</script>
</head>
</pre>
</td></tr>
</tbody></table>
<br />
<hr />
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-62223920372196458972013-05-06T19:49:00.003+05:302013-05-06T19:49:31.094+05:30Keep on prompting for credential<div dir="ltr" style="text-align: left;" trbidi="on">
<br /><table border="0" cellpadding="0" cellspacing="4"><tbody>
<tr>
<td nowrap="" valign="top"> </td>
<td>
To save your SharePoint password:<br />
<ol>
<li>Add the SharePoint site to the Local Intranet Zone in Internet Explorer. To
do this, go to <strong>Tools > Internet Options > Security</strong>.
In <strong>Local Intranet,</strong> click the <strong>Sites</strong> button and
then <strong>Advanced</strong>.
</li>
<li>Add your SharePoint URL. Click <strong>Ok</strong>.
</li>
<li>Go to <strong>Start</strong> > <strong>Run</strong> and type in
"<em>control keymgr.dll’</em>" to open the Windows key manager.
</li>
<li>Add <your_sharepoint_site_address> with your SharePoint site login
credentials. If this entry already exists, edit it to have your login
credentials.
<ul>
<li>For Vista users, when using the key manager, make sure you select "A Web
site or Program credentials" for the type of password, and if prompted to change
your password, say "no" (unless you want to change your password). </li>
</ul>
</li>
<li>Enter your password and click <strong>OK</strong>.
</li>
<li>Reboot the computer. </li>
</ol>
If you are missing the <strong>Add</strong>
button, you may want to modify Windows Registry to be able to save the password.
<span style="color: red;">Note that for editing Windows Registry,
administrator rights are required. Editing Windows Registry is not safe and you
will perform it at your own risk.</span><br />
<ol>
<li>In Windows, go to <strong>Start</strong> >
<strong>Run</strong> and enter <em>"regedit".</em>
</li>
<li>Navigate to
<strong>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\.</strong>
</li>
<li>Find the <strong>DisableDomainCreds</strong>
entry. A value of <strong>1</strong> (enabled) will prevent you from saving new
credentials. <br />Change the value to <strong>0</strong> and reboot. Now you
should have the Add button available. Note that <strong>0</strong> is the
default value.
</li>
<li>Also check
the <strong>LmCompatibilityLevel</strong> entry. It should be set to
<strong>3</strong>, which is the default value. If you have another value,
change it to <strong>3</strong>. If it does not work with <strong>3</strong>,
then also try it with <strong>2</strong>.
</li>
<li>Reboot the computer to apply changes.</li>
</ol>
</td></tr>
</tbody></table>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-6676616714409180892013-04-24T17:33:00.000+05:302013-04-24T17:57:24.656+05:30SharePoint 2010 User Information Update<div dir="ltr" style="text-align: left;" trbidi="on">
<div align="center" id="ad_spot" style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 11px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">
<ins style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: none; display: inline-table; height: 60px; margin: 0px; outline: 0px; padding: 0px; position: relative; vertical-align: baseline; visibility: visible; width: 468px;"><ins id="aswift_0_anchor" style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: none; display: block; height: 60px; margin: 0px; outline: 0px; padding: 0px; position: relative; vertical-align: baseline; visibility: visible; width: 468px;"><br /></ins></ins></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
One of my clients recently had an issue where a particularly high profile user (CEO) had their title spelled incorrectly in Active Directory; unfortunately the error wasn’t noticed right away and now, despite changing the information in Active Directory, SharePoint was still showing the wrong title in the People Picker when granting the user rights to a Site Collection. Fortunately I had a partial PowerShell script to fix the issue and just needed to only slightly modify it – you can see the original script on pages 299 and 300 of <a href="http://www.amazon.com/dp/0470939206?tag=shareautom-20&camp=213381&creative=390973&linkCode=as4&creativeASIN=0470939206&adid=0N73WQ7X6VCZB5V4H95A&&ref-refURL=http%3A%2F%2Fblog.falchionconsulting.com%2F" style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; color: #807d7a; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;" target="_blank">my book</a>. So before I show the modified script it’s first important to understand the problem and why I needed to use a script and why what I had in the book is somewhat incomplete.</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
Whenever you grant a user rights to a Site Collection or when that user creates/updates/deletes any item within a Site Collection, an entry for the user will be added to a hidden user information list, if not already there. This “User Information List” is located at <em style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">http://<SiteCollectionUrl>/_catalogs/users/detail.aspx:</em></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa064e71" border="0" height="199" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa064e71.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa064e71" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
By looking at this list you can see that several key pieces of information are stored here – unfortunately, when you change this information in Active Directory the information stored here is not updated (even after running a full or incremental import via UPS). To complicate matters there is no way to edit the information via the browser, thus the need for a PowerShell script. If you click the user’s name you’ll see the additional properties, including an “Edit Item” option, however, the edit dialog is simply a read-only display of the username, helpful right?:</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa089b49" border="0" height="158" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa089b49.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa089b49" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
So let’s first consider the scenario that my book addresses and assume that a user had had their name and/or email address changed. To accommodate this scenario we simply use the <a href="http://technet.microsoft.com/en-us/library/ff607827.aspx" style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; color: #807d7a; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;" target="_blank"><span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Set-SPUser</span></a> cmdlet along with the <span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">-SyncFromAD</span>parameter. The following script is taken directly from my book and simply iterates through all Site Collections and calls the<span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Set-SPUser</span> cmdlet for the provided user:</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<div style="font-size: 1.2em;">
<br /></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: blue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">function</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">Sync-SPUser</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">([</span><span style="border: none windowtext 1.0pt; color: teal; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">string</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">]</span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$userName</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">) {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">Get-SPSite</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-Limit</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: maroon; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">All</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> | </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">foreach</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$web</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: red; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">=</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$_</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">.RootWeb<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: blue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">if</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> (</span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$_</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">.WebApplication.UseClaimsAuthentication) {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$claim</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: red; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">=</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">New-SPClaimsPrincipal</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$userName</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-IdentityType</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: maroon; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">WindowsSamAccountName</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$user</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: red; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">=</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$web</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> | </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">Get-SPUser</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-Identity</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$claim</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-ErrorAction</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: maroon; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">SilentlyContinue</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> } </span><span style="border: none windowtext 1.0pt; color: blue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">else</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$user</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: red; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">=</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$web</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> | </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">Get-SPUser</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-Identity</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$userName</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-ErrorAction</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: maroon; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">SilentlyContinue</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: xx-small; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: blue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">if</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> (</span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$user</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: red; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-ne</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$null</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">) {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$web</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> | </span><b><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">Set-SPUser</span></b><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-Identity</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$user</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><i><span style="border: none windowtext 1.0pt; color: cadetblue; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">-SyncFromAD</span></i><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: xx-small; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$web</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">.Dispose()<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> </span><span style="border: none windowtext 1.0pt; color: purple; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">$_</span><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">.Dispose()<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: xx-small; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="font-size: x-small;"><span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;">}</span><span style="font-family: 'Courier New';"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; margin-bottom: 0.0001pt; vertical-align: baseline;">
<span style="border: none windowtext 1.0pt; color: black; font-family: "Courier New"; font-size: 8.5pt; mso-border-alt: none windowtext 0in; mso-fareast-font-family: "Times New Roman"; padding: 0in;"><br /></span></div>
<div style="font-size: 1.2em;">
<br /></div>
<div style="font-size: 1.2em;">
<span style="font-size: 1.2em;">Before I make any changes to demonstrate this script and the modifications we’ll make to it, let’s first see how my user is currently set in the Site Collection:</span></div>
</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="image" border="0" height="335" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/image.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="image" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
And as shown in the People Picker:</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa14e91b" border="0" height="125" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa14e91b.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa14e91b" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
Note the “Name”/”Display Name”, “Work e-mail”/”E-Mail”, and “Title” fields.</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
Now I’ll change these values in Active Directory (make the “p” in my last name capitalized, change the title, and set the email) and then run the script (I saved the script as Sync-SPUser.ps1):</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa17239b" border="0" height="126" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa17239b.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa17239b" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
(Note that lowercase “p” is the correct spelling for my name, just in case you were wondering <img alt="Smile" class="wlEmoticon wlEmoticon-smile" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/wlEmoticon-smile.png" style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px none; height: 10px; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline; width: 10px;" />). Now if we look at the user details in the Site Collection and the People Picker we should see the following:</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="image" border="0" height="335" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/image1.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="image" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa1a344d" border="0" height="132" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa1a344d.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa1a344d" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
Notice that the the “Name” / “Display Name” and “Work e-mail” / “E-Mail” fields were updated but not the “Title” field. This is because the <span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Set-SPUser</span> cmdlet and <span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">-SyncFromAD</span> parameter only updates these two fields. So how do you update the remaining fields? We simply need to add some code to our function which will grab the <span style="background-color: transparent; background-position: initial initial; background-repeat: initial initial; border: 0px; font-family: Courier New; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">SPListItem</span> corresponding to the user from the hidden “User Information List” and then update the corresponding fields manually. The following modified script does this for the “Title” field (note that I’ve changed the function signature to take the title in as a parameter):</div>
<div style="background-color: white; border: 0px; font-family: Tahoma; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<div>
<br />
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; color: blue; padding: 0in;">function</span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">Sync-SPUser</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">([</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: teal; padding: 0in;">string</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">]</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$userName</span></span><span style="outline: 0px;"><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">, [</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: teal; padding: 0in;">string</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">]</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$title</span></span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">) {<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;">Get-SPSite</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-Limit</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">All</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> | </span></span><span style="outline: 0px;"><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;">foreach</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> {<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$web</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$_</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">.RootWeb<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: blue; padding: 0in;">if</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> (</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$_</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">.WebApplication.UseClaimsAuthentication) {<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$claim</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">New-SPClaimsPrincipal</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$userName</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-IdentityType</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">WindowsSamAccountName</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$user</span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$web</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> | </span></span><span style="outline: 0px;"><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;">Get-SPUser</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-Identity</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$claim</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-ErrorAction</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">SilentlyContinue</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> } </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: blue; padding: 0in;">else</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> {<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$user</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$web</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> | </span></span><span style="outline: 0px;"><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;">Get-SPUser</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-Identity</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$userName</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-ErrorAction</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">SilentlyContinue</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="border: 1pt none windowtext; padding: 0in;"><span style="font-size: x-small;"> }<o:p></o:p></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: blue; padding: 0in;">if</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> (</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$user</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">-ne</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$null</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">) {<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$web</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> | </span></span><span style="outline: 0px;"><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;">Set-SPUser</span></b></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-Identity</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$user</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><i><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">-SyncFromAD</span></i></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$list</span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$web</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;">.Lists[</span></span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"><span style="outline: 0px;">"</span><span style="outline: 0px;">User Information List</span><span style="outline: 0px;">"</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"></span><span style="outline: 0px;">]<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"><span style="outline: 0px;">$query</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: red; padding: 0in;"></span><span style="outline: 0px;">=</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><b><span style="border: 1pt none windowtext; color: cadetblue; padding: 0in;"></span><span style="outline: 0px;">New-Object</span></b></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">Microsoft.SharePoint.SPQuery</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$query</span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;">.Query </span></span><span style="border: 1pt none windowtext; color: red; padding: 0in;"><span style="outline: 0px;">=</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"></span><span style="outline: 0px;">"</span><span style="outline: 0px;"><Where><Eq><FieldRef Name='Name'/><Value Type='Text'>$userName</Value></Eq></Where></span><span style="outline: 0px;">"</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="border: 1pt none windowtext; color: blue; padding: 0in;">foreach</span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> (</span></span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"><span style="outline: 0px;">$item</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: blue; padding: 0in;"></span><span style="outline: 0px;">in</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$list</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;">.GetItems(</span></span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"><span style="outline: 0px;">$query</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"></span><span style="outline: 0px;">)) {</span><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$item</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;">[</span></span><span style="border: 1pt none windowtext; color: maroon; padding: 0in;"><span style="outline: 0px;">"</span><span style="outline: 0px;">JobTitle</span><span style="outline: 0px;">"</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;">] </span></span><span style="border: 1pt none windowtext; color: red; padding: 0in;"><span style="outline: 0px;">=</span></span><span style="border: 1pt none windowtext; padding: 0in;"><span style="outline: 0px;"> </span><span style="border: 1pt none windowtext; color: purple; padding: 0in;"></span><span style="outline: 0px;">$title</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="background-color: yellow; background-position: initial initial; background-repeat: initial initial; border: 1pt none windowtext; color: purple; padding: 0in;">$item</span><span style="outline: 0px;"><span style="background-color: yellow; border: 1pt none windowtext; padding: 0in;"></span><span style="outline: 0px;">.SystemUpdate()</span><span style="border: 1pt none windowtext; padding: 0in;"><o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="border: 1pt none windowtext; padding: 0in;"><span style="font-size: x-small;"> <span style="background: yellow;">}</span><o:p></o:p></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="border: 1pt none windowtext; padding: 0in;"><span style="font-size: x-small;"> }<o:p></o:p></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$web</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">.Dispose()<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;"> </span><span style="outline: 0px;"><span style="border: 1pt none windowtext; color: purple; padding: 0in;">$_</span></span><span style="outline: 0px;"><span style="border: 1pt none windowtext; padding: 0in;">.Dispose()<o:p></o:p></span></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="border: 1pt none windowtext; padding: 0in;"><span style="font-size: x-small;"> }<o:p></o:p></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="font-size: x-small;"><span style="border: 1pt none windowtext; padding: 0in;">}</span><span style="color: #2c2c29;"><o:p></o:p></span></span></pre>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"><span style="border: 1pt none windowtext; font-size: 8.5pt; padding: 0in;">
</span></pre>
</div>
<pre style="background-position: initial initial; background-repeat: initial initial; vertical-align: baseline;"></pre>
<div>
The changes to the original function have been highlighted. Note that the internal field name for the “Title” field is “JobTitle” and that is what we are using to set the Title. Now if we run this modified script we should see the Title field updated:</div>
</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa21bc70" border="0" height="136" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa21bc70.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa21bc70" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa236af7" border="0" height="119" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa236af7.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa236af7" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
Okay, so what about the other fields (Department, Mobile Number, etc.)? You can see what fields are available to edit by running the following:</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
<img alt="SNAGHTMLa265249" border="0" height="126" src="http://blog.falchionconsulting.com/wp-content/uploads/2011/12/SNAGHTMLa265249.png" style="background-color: transparent; background-image: none; background-position: initial initial; background-repeat: initial initial; border: 0px; display: inline; margin: 0px; max-width: 713px; outline: 0px; padding: 0px; vertical-align: baseline;" title="SNAGHTMLa265249" width="400" /></div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
In the preceding example I’m grabbing a specific item (in this case the item corresponding to my user) so that I can see the internal field names in context with the data stored by the field – this helps to make sure that I grab the correct field name (i.e., “JobTitle” vs. “Title”). Now you can just add additional fields to update right before the call to SystemUpdate() – simply follow the pattern established for the title field.</div>
<div style="background-color: white; border: 0px; color: #2c2c29; font-family: Tahoma; font-size: 1.2em; margin-bottom: 15px; margin-top: 1px; outline: 0px; padding: 2px; vertical-align: baseline;">
So, add this guy to your script library and you’ll be good to go next time someone changes their name, email, or job title.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-42452827389772410232013-02-21T10:04:00.002+05:302013-02-21T10:08:00.029+05:30The server farm account should not be used for other services for User Profile Synchronization Service in SharePoint 2010 Health Analyzer<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="entry">
The User Profile Sync service has to run under the Farm account. But doing this causes a error to appear in the SharePoint 2010 health analyzer.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_0.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-726" height="362" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_0.png" title="ups_health_0" width="640" /></a><br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_01.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-727" height="578" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_01.png" title="ups_health_01" width="619" /></a><br />
<br />
I use a simple trick to prevent this error from showing in health analyzer without disabling the rule.<br />
<br />
Go to Central Administration -> Security -> Configure Service accounts.<br />
<br />
Select the User Profile Synchronization Service . You see that it is configured to use the Farm account.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_1.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-728" height="362" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_1.png" title="ups_health_1" width="640" /></a><br />
<br />
Also the ForeFront Windows Services are running under the Farm account<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_2.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-729" height="101" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_2.png" title="ups_health_2" width="640" /></a><br />
<br />
Select a different managed account. Now click OK.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_3.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-730" height="357" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_3.png" title="ups_health_3" width="640" /></a><br />
<br />
You will see that one of the ForeFront identity services under your Windows services is now configured to use the chosen account.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_4.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-731" height="97" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_4.png" title="ups_health_4" width="640" /></a><br />
<br />
Now here is the trick. Go to Central Administration -> System Settings -> Services on server. Stop the User Profile Sync service if is not stopped. Now start the service again.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_5.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-732" height="43" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_5.png" title="ups_health_5" width="900" /></a><br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_6.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-733" height="293" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_6.png" title="ups_health_6" width="640" /></a><br />
<br />
As you can see we are now required to use the Farm account. Give the password and click OK. After a while the service will have the state started.<br />
Now go to your Windows Services list. Search for the ForeFront Identity services. As you can see they are configured to use your farm account.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_2.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-729" height="101" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_2.png" title="ups_health_2" width="640" /></a><br />
<br />
Now go to Central Administration -> Security -> Configure Service accounts. Select the User Profile Synchronization Service . And what do we see? SharePoint hasn’t changed the account<br />
listed here.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_3.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-730" height="357" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_3.png" title="ups_health_3" width="640" /></a><br />
<br />
Now reanalyze the error in Health Analyzer. The problem is gone.<br />
<br />
<a href="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_8.png" rel="lightbox[720]"><img alt="" class="aligncenter size-full wp-image-735" height="577" src="http://www.dannyhansen.nl/wp-content/uploads/2012/08/ups_health_8.png" title="ups_health_8" width="621" /></a></div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-91732034507878943822013-02-21T08:10:00.004+05:302013-02-21T08:10:32.751+05:30SharePoint Site Keeps Prompting for Credentials<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="post-title fix">
<strong>Problem</strong></div>
<div class="post-title fix">
<strong></strong> </div>
<div class="entry_wrap fix">
<div class="entry_content">
SharePoint keeps prompting you for credentials in the following scenarios:<br />
<ol>
<li>You get prompted for credentials when you access the site in the browser.</li>
<li>You get prompted for credentials when you open a document from SharePoint.</li>
<li>You get prompted for credentials after you open a document from SharePoint and try to “Save As”.</li>
</ol>
<strong>Cause</strong><br />
<br />
The most likely cause of your problem is that you are using an FQDN for SharePoint (For example, sharepoint.company.com) and your client machine runs Windows 7. By default, Internet Explorer and Webdav assume that this address is on the Internet and as a security measure, does not automatically pass in your credentials.<br />
<br />
<strong>Solution</strong><br />
<br />
If your scenario is the same as above, then you will need to do two things.<br />
<ol>
<li>Add your SharePoint server’s FQDN to your Trusted Sites or Intranet Sites zone.</li>
<li>Modify your registry settings for the WebClient service.</li>
</ol>
<span style="text-decoration: underline;">Add your SharePoint server’s FQDN to your Trusted Sites or Intranet Sites zone.</span><br />
If using Trusted sites, ensure that you do not select “Require server verification (https:) for all sites in this zone”.<br />
<ol>
<li>Internet Explorer -> Internet Options -> Security -> Trusted Sites -> Sites</li>
<li>Add the URL(s) of your SharePoint server(s).</li>
<li>Click OK</li>
<li>Click Custom Level -> Scroll to the bottom -> User Authentication</li>
<li>Ensure that it is set to <strong>Automatic logon with current user name and password</strong></li>
</ol>
If you are using the Intranet Sites zone, note that you need to manually add the SharePoint server URL under Advanced settings.<br />
<ol>
<li>Internet Explorer -> Internet Options -> Security -> Local Intranet -> Sites -> Advanced</li>
<li>Add the URL(s) of your SharePoint server(s).</li>
<li>Click OK</li>
<li>Click Custom Level -> Scroll to the bottom -> User Authentication</li>
<li>Ensure that it is set to <strong>Automatic logon with current user name and password</strong></li>
</ol>
<span style="text-decoration: underline;">Modify your registry settings for the WebClient service.</span><br />
<ol>
<li>Open Regedit, Start -> Run -> regedit</li>
<li>Browse to the location: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters</li>
<li>Create a new Multi-String Value and call it <strong>AuthForwardServerList</strong></li>
<li>Under Value data: Type in the URL of the SharePoint sites, one on each line. You may use wildcards.</li>
<li>Click OK.</li>
<li>Open Services console, Start -> Run -> services.msc</li>
<li>Look for the WebClient service, and click on Restart.</li>
</ol>
</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-45238938936708291162013-02-21T08:05:00.001+05:302013-02-21T08:05:51.548+05:30Creating User Profile Synchronization Exclusion Filters using the userAccountControl attribute <div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: justify;">
<div style="text-align: justify;">
Planning and implementing Exclusion Filters for SharePoint Server 2010 User Profile Synchronization (UPS) is without doubt one of the most important aspects of any UPS deployment. By making use of Exclusion Filters we can narrow down the objects we sync with. Exclusion Filters reduce the amount of “junk” in the Profile database and can significantly decrease the time taken to perform synchronization runs.</div>
<div style="text-align: justify;">
I will be posting more about Exclusion Filters in general soon, but for this post I will concentrate on the most commonly used filter – that of the userAccountControl attribute in Active Directory. This is by far the one I am asked about most, and is commonly misunderstood.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The userAccountControl attribute is used to store the account options for an AD user object. These options include the status of the account (e.g. disabled, or locked out). Each option is a property flag. These flags are cumulative and thus there is only ever one value for userAccountControl.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Therefore it makes sense to create an exclusion filter to avoid synchronizing disabled accounts and so on. This one is easy and finds it’s way into most documentation such as the very good <strong>Configure profile synchronization</strong>. However it is a bit more tricky when dealing with other property flags and combinations of them.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Let’s start by taking a look at the core capability and exclude disabled accounts.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Once we select the userAccountControl attribute in the <strong>Edit Connection Filters</strong> page, it will refresh and populate the operators available to us:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<a href="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_2.png"><img alt="image" border="0" height="269" src="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_thumb.png" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="465" /></a></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Now this is where the fun starts. We could choose the <strong>Equals</strong> operator to filter on specific values. However, while possible, this is a <strong>very bad idea</strong> and can lead to unexpected results. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The decimal value of the ADS_UF_ACCOUNTDISABLE property flag is 2. But if we enter 2 in here and save the filter and then run a sync, disabled accounts will still be synced.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Remember that this attribute is cumulative. There is never going to be an account with a value of 2. For an account to be disabled it has to be an account in the first place! A normal disabled user account with no other property flags will be 514:</div>
<ul>
<li><div style="text-align: justify;">
<span style="color: black;">Normal User Account (ADS_UF_NORMAL_ACCOUNT) = 512</span> </div>
</li>
<li><div style="text-align: justify;">
<span style="color: black;">Disabled Account (ADS_UF_ACCOUNTDISABLE) = 2</span> </div>
</li>
</ul>
<div style="text-align: justify;">
But we shouldn’t use 514 either, because what happens if a disabled account also has the ADS_UF_HOMEDIR_REQUIRED property flag set? Then the value becomes 522. If we want to exclude all disabled accounts, we have a lot of work to do to create filters for each of the potential combinations.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
This is where the <strong>Bit on equals</strong> operator comes into play. This allows us to create filters which filter based upon a bit value.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
If we go ahead and create a filter using <strong>Bit on equals 2</strong> for the userAccountControl attribute, disabled accounts will always be excluded regardless of other property flags present. It doesn’t matter what the value, the second bit will always be “on”. To illustrate this let’s take the same example:</div>
<ul>
<li><div style="text-align: justify;">
<span style="color: black;">Disabled User Account = 514 (In binary that’s 10000000<strong>1</strong>0)</span> </div>
</li>
<li><div style="text-align: justify;">
<span style="color: black;">Disabled User Account with Home Directory Required = 522 (In binary that’s 10000010<strong>1</strong>0)</span> </div>
</li>
</ul>
<div style="text-align: justify;">
As you can see in both cases the “second bit is on”. And this is why we need the filter for disabled accounts to be “Bit on equals = 2”.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<a href="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_4.png"><img alt="image" border="0" height="103" src="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_thumb_1.png" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="554" /></a></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The problem here is we need convert the property flag into binary to determine the bit(s) we wish to check, and therefore which value to enter into the filter value text box. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
As you may have noticed if you enter a number into the filter value when using the bit on equals operator and save the connection, the number changes when you go back in to view or edit it. Try it with 10 or 36. These values will magically become 16 and 54! This is a known bug and is fixed in the <strong>October 2010 CU </strong>and later. From the KB:</div>
<blockquote>
<div style="text-align: justify;">
<em>“You set a numeric value for a filter in a synchronization connection in SharePoint Server 2010. Then you save the filter. In this situation, you notice that the numeric value in the filter has unexpectedly increased when you view the filter again.”</em></div>
</blockquote>
<div style="text-align: justify;">
There will never be a bit on equals value to check greater than 25 when using the standard AD property flags (for this attribute).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
The next thing to do is to combine filters. Say we want to exclude disabled accounts and also accounts which have the Password Never Expires (ADS_UF_DONT_EXPIRE_PASSWD) flag set (these are commonly service accounts).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
We need to add two filters to catch both:</div>
<ul>
<li><div style="text-align: justify;">
<span style="color: black;">Disabled Account = 2 (In binary that’s <strong>1</strong>0)</span> </div>
</li>
<li><div style="text-align: justify;">
<span style="color: black;">Password Never Expires = 65536 (In binary that’s <strong>1</strong>0000000000000000)</span> </div>
</li>
</ul>
<div style="text-align: justify;">
Therefore we need a “Bit on equals 17” for the accounts with the Password Never Expires flag in addition to the “Bit on equals 2” for disabled accounts.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<a href="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_6.png"><img alt="image" border="0" height="132" src="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_thumb_2.png" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="554" /></a> </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
But watch out, there’s a classic gotcha on the <strong>Edit Connection Filters</strong> page. When we add multiple filters the default operator between them is <strong>AND</strong>. This means that if we don’t change this, the only accounts that will be filtered in this case will be those that are <strong>both</strong> disabled and don’t have password expiry. That’s likely to be nowhere near as many as we want. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
So we must create them using the <strong>OR</strong> operator:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<a href="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_8.png"><img alt="image" border="0" height="194" src="http://www.harbar.net/images/www_harbar_net/Windows-Live-Writer/Creating-User-Profile-Synchronization-Fi_FD56/image_thumb_3.png" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="image" width="447" /></a></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
If we’ve created them by accident with the AND operator, we have to remove them and recreate them. It gets worse. Take another look at the filter list above. Yup, that’s right, it doesn’t display which operator was applied! There is no way to tell from this UI which one was used. This is easily the number one reason why filters don’t work as expected and why planning and documenting your filters is paramount!</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Let’s work through one more example. Say we wish to exclude all accounts which are either disabled, locked out, or for which the password has expired. These are the filters we would need:</div>
<ul>
<li><div style="text-align: justify;">
<span style="color: black;">userAccountControl Bit on equals 2 OR</span> </div>
</li>
<li><div style="text-align: justify;">
<span style="color: black;">userAccountControl Bit on equals 5 OR</span> </div>
</li>
<li><div style="text-align: justify;">
<span style="color: black;">userAccountControl Bit on equals 24 OR</span> </div>
</li>
</ul>
<div style="text-align: justify;">
So that’s that. This isn’t difficult. But it’s certainly not obvious on first glance, it’s not documented, and it’s not the sort of thing the average SharePoint administrator is comfortable with. The <strong>Edit Connection Filters</strong> page doesn’t exactly help. Fundamentally this is about converting the property flags into binary to determine the bit(s) we wish to check, and therefore which value to enter into the filter value text box. </div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-56521361884766338742013-02-21T07:27:00.000+05:302013-02-21T07:31:25.100+05:30Permission levels in SharePoint sites<div dir="ltr" style="text-align: left;" trbidi="on">
A permission level<span class="AsstInlineDefText"><span class="ACICollapsed" id="divInlineDef_411514586_1"> (permission level: A set of permissions that can be granted to users or SharePoint groups on an entity such as a site, library, list, folder, item, or document.)</span></span> enables you to assign a particular set of permissions to users and SharePoint groups so that they can perform specific actions on your site. By creating new permission levels (or editing existing permission levels) with the permissions required to perform common tasks, you can associate an appropriate permission level with the users or SharePoint groups for the securable object on which you want to allow them to perform those actions. <br />
<div class="cntPS1 cntGSContainer24">
<div class="cdArticle cntGSGrid18 cntGSFirst">
<div class="cdArticleBody">
<div class="cdArticleText cntArticleBody">
The following permission levels are provided by default: Full Control, Design, Contribute, Read, Limited Access. Anyone assigned to a permission level that includes the Manage Permissions permission can fully customize permission levels (except for the Full Control and Limited Access permission levels) or create new ones. Members of the Site Owners SharePoint group are assigned the Manage Permissions permission, by default.<br />
<br />
<b class="cntnote"> Note </b> Prior to Windows SharePoint Services 3.0, permission levels were called site groups. <br />
Permission levels are managed at the site level. Because of this, you can perform the following tasks on the top-level Web site of a site collection or on any subsite that is using unique permissions. You cannot manage permissions on a subsite that is inheriting permissions from its parent. Instead, you must either manage permissions of the parent, or you must first stop inheriting permissions from the parent site and then create unique permissions on the subsite. <br />
Managing permissions of a parent site affects not only the parent site, but all subsites inheriting from that parent site. Before you manage permissions of a parent site, carefully consider how your changes will affect other sites.<br />
<a href="http://www.blogger.com/null" id="BMcreate" name="BMcreate"></a><br />
<h2>
<a href="http://www.blogger.com/null" id="BMcreate" name="BMcreate"></a> Create a permission level</h2>
On the <b class="ui">Site Actions</b> menu <img alt="Site Actions menu" border="0" src="http://officeimg.vo.msecnd.net/en-in/files/140/014/ZA010074910.gif" style="visibility: visible;" title="Site Actions menu" />, click <b class="ui">Site Settings</b>.<br />
<b class="cntnote"> Note </b> On a site for which the <b class="ui">Site Actions</b> menu is customized, point to <b class="ui">Site Settings</b>, and then click the settings that you want to view.<br />
<ol class="cntIndent36" type="1">
<li>On the Site Settings page, in the <b class="ui">Users and Permissions</b> section, click <b class="ui">Advanced permissions</b>.</li>
<li>If the <b class="ui">Settings</b> menu is not available, select <b class="ui">Manage Permissions of Parent</b> from the <b class="ui">Actions</b> menu. Otherwise, skip to step 4.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> The <b class="ui">Settings</b> menu is not available on the Permissions page if your site is inheriting permissions from its parent site. </div>
<ol class="cntIndent36" start="3" type="1">
<li>On the Permissions page, on the <b class="ui">Settings</b> menu, click <b class="ui">Permission Levels</b>.</li>
<li>On the Permission Levels page, click <b class="ui">Add a Permission Level</b>.</li>
<li>On the Add a Permission Level page, in the <b class="ui">Name and Description</b> section, type a name and optionally a description.</li>
<li>In the <b class="ui">Permissions</b> section, select the permissions you want to associate with this permission level.</li>
<li>After you have made your changes, click <b class="ui">Submit</b>.</li>
</ol>
<a href="http://www.blogger.com/null" id="BMcopy" name="BMcopy"></a><br />
<h2>
<a href="http://www.blogger.com/null" id="BMcopy" name="BMcopy"></a> Copy a permission level</h2>
On the <b class="ui">Site Actions</b> menu <img alt="Site Actions menu" border="0" src="http://officeimg.vo.msecnd.net/en-in/files/140/014/ZA010074910.gif" style="visibility: visible;" title="Site Actions menu" />, click <b class="ui">Site Settings</b>.<br />
<b class="cntnote"> Note </b> On a site for which the <b class="ui">Site Actions</b> menu is customized, point to <b class="ui">Site Settings</b>, and then click the settings that you want to view.<br />
<ol class="cntIndent36" type="1">
<li>On the Site Settings page, in the <b class="ui">Users and Permissions</b> section, click <b class="ui">Advanced permissions</b>.</li>
<li>If the <b class="ui">Settings</b> menu is not available, select <b class="ui">Manage Permissions of Parent</b> from the <b class="ui">Actions</b> menu. Otherwise, skip to step 4.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> The <b class="ui">Settings</b> menu is not available on the Permissions page if your site is inheriting permissions from its parent site. </div>
<ol class="cntIndent36" start="3" type="1">
<li>On the <b class="ui">Settings</b> menu, click <b class="ui">Permission Levels</b>.</li>
<li>On the Permission Levels page, in the <b class="ui">Permission Level</b> column, click the name of the permission level you want to copy.</li>
<li>Scroll to the bottom of the Edit Permission Level page, and then click <b class="ui">Copy Permission Level</b>.</li>
<li>In the <b class="ui">Permission Level Name and Description</b> section, type a name and optionally a description for the new permission level.</li>
<li>In the <b class="ui">Permissions</b> section, select the permissions that you want to associate with this new permission level and clear the permissions that you don't want to associate with this permission level.</li>
<li>After you have made your changes, click <b class="ui">Submit</b>.</li>
</ol>
<div class="cntIndent36">
The new permission level appears on the Permission Levels page.</div>
<a href="http://www.blogger.com/null" id="BMchange" name="BMchange"></a><br />
<h2>
<a href="http://www.blogger.com/null" id="BMchange" name="BMchange"></a> Edit a permission level</h2>
On the <b class="ui">Site Actions</b> menu <img alt="Site Actions menu" border="0" src="http://officeimg.vo.msecnd.net/en-in/files/140/014/ZA010074910.gif" style="visibility: visible;" title="Site Actions menu" />, click <b class="ui">Site Settings</b>.<br />
<b class="cntnote"> Note </b> On a site for which the <b class="ui">Site Actions</b> menu is customized, point to <b class="ui">Site Settings</b>, and then click the settings that you want to view.<br />
<ol class="cntIndent36" type="1">
<li>On the Site Settings page, in the <b class="ui">Users and Permissions</b> section, click <b class="ui">Advanced permissions</b>.</li>
<li>If the <b class="ui">Settings</b> menu is not available, select <b class="ui">Manage Permissions of Parent</b> from the <b class="ui">Actions</b> menu. Otherwise, skip to step 4.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> The <b class="ui">Settings</b> menu is not available on the Permissions page if your site is inheriting permissions from its parent site. </div>
<ol class="cntIndent36" start="3" type="1">
<li>On the <b class="ui">Settings</b> menu, click <b class="ui">Permission Levels</b>.</li>
<li>On the Permission Levels page, in the <b class="ui">Permission Level</b> column, click the name of the permission level you want to edit.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> You cannot make changes to the Full Control or Limited Access permission levels.</div>
<div class="cntIndent36">
On the Edit Permission Level page, you can make the following changes:</div>
<ul class="cntIndent72" type="disc">
<li>Change the description of the permission level.</li>
<li>Select the permissions that you want to associate with this permission level and clear the permissions that you do not want to associate with this permission level. </li>
</ul>
<ol class="cntIndent36" start="5" type="1">
<li>After you have made your changes, click <b class="ui">Submit</b>.</li>
</ol>
<a href="http://www.blogger.com/null" id="BMdelete" name="BMdelete"></a><br />
<h2>
<a href="http://www.blogger.com/null" id="BMdelete" name="BMdelete"></a> Delete a permission level</h2>
On the <b class="ui">Site Actions</b> menu <img alt="Site Actions menu" border="0" src="http://officeimg.vo.msecnd.net/en-in/files/140/014/ZA010074910.gif" style="visibility: visible;" title="Site Actions menu" />, click <b class="ui">Site Settings</b>.<br />
<b class="cntnote"> Note </b> On a site for which the <b class="ui">Site Actions</b> menu is customized, point to <b class="ui">Site Settings</b>, and then click the settings that you want to view.<br />
<ol class="cntIndent36" type="1">
<li>On the Site Settings page, in the <b class="ui">Users and Permissions</b> section, click <b class="ui">Advanced permissions</b>.</li>
<li>If the <b class="ui">Settings</b> menu is not available, select <b class="ui">Manage Permissions of Parent</b> from the <b class="ui">Actions</b> menu. Otherwise, skip to step 4.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> The <b class="ui">Settings</b> menu is not available on the Permissions page if your site is inheriting permissions from its parent site. </div>
<ol class="cntIndent36" start="3" type="1">
<li>On the Permissions page, on the <b class="ui">Settings</b> menu, click <b class="ui">Permission Levels</b>.</li>
<li>On the Permission Levels page, select the check boxes for the permission levels you want to delete, and then click <b class="ui">Delete Selected Permission Levels</b>.</li>
<li>Click <b class="ui">OK</b> to confirm.</li>
</ol>
<a href="http://www.blogger.com/null" id="BMinherit" name="BMinherit"></a><br />
<h2>
<a href="http://www.blogger.com/null" id="BMinherit" name="BMinherit"></a>Inherit permissions from parent site</h2>
If your Web site has unique permissions, you can inherit permissions from the parent Web site at any time. <br />
<b class="cntnote"> Important </b> Inheriting permissions from the parent site permanently discards all custom permissions that you might have created on any securable object for this site. This means that all lists, libraries, folders within those lists and libraries, list items, and documents lose all their unique permission settings.<br />
On the <b class="ui">Site Actions</b> menu <img alt="Site Actions menu" border="0" src="http://officeimg.vo.msecnd.net/en-in/files/140/014/ZA010074910.gif" style="visibility: visible;" title="Site Actions menu" />, click <b class="ui">Site Settings</b>.<br />
<b class="cntnote"> Note </b> On a site for which the <b class="ui">Site Actions</b> menu is customized, point to <b class="ui">Site Settings</b>, and then click the settings that you want to view.<br />
<ol class="cntIndent36" type="1">
<li>On the Site Settings page, in the <b class="ui">Users and Permissions</b> section, click <b class="ui">Advanced permissions</b>.</li>
</ol>
<div class="cntIndent36">
<b class="cntnote"> Note </b> If the <b class="ui">Settings</b> menu is not available on the Permissions page, your site is already inheriting permissions from its parent site. </div>
<ol class="cntIndent36" start="2" type="1">
<li>On the Permissions page, on the <b class="ui">Settings</b> menu, click <b class="ui">Permission Levels</b>.</li>
<li>On the Permission Levels page, click <b class="ui">Inherit Permission Levels from the Parent Web Site</b>.</li>
<li>Click <b class="ui">OK</b> to confirm.</li>
</ol>
</div>
</div>
</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-28928302757666529582013-02-15T09:24:00.000+05:302013-02-15T09:28:19.665+05:30Group Permission For Document Library<div dir="ltr" style="text-align: left;" trbidi="on">
<span class="kwd"><strong>Senario</strong>: We need to write a script for already created a document library called "Audit Logs" for every site collection in our environment. Wanted to ensure that only Site Collection administrators and the individual site Owners group had access to this document library. </span><br />
<span class="kwd"> </span></div>
<span class="kwd"><strong>Solution</strong>:</span><br />
<br />
<span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> </span><span class="pun">-</span><span class="kwd">not</span><span class="pln"> $</span><span class="pun">(</span><span class="typ">Get</span><span class="pun">-</span><span class="typ">PSSnapin</span><span class="pln"> </span><span class="typ">Microsoft</span><span class="pun">.</span><span class="typ">SharePoint</span><span class="pun">.</span><span class="typ">PowerShell</span><span class="pln"> </span><span class="pun">-</span><span class="typ">ErrorAction</span><span class="pln"> </span><span class="str">"SilentlyContinue"</span><span class="pln"> </span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="typ">Add</span><span class="pun">-</span><span class="typ">PSSnapin</span><span class="pln"> </span><span class="typ">Microsoft</span><span class="pun">.</span><span class="typ">SharePoint</span><span class="pun">.</span><span class="typ">PowerShell</span><span class="pun">}</span><span class="pln"><br /><br />$sites </span><span class="pun">=</span><span class="pln"> </span><span class="typ">Get</span><span class="pun">-</span><span class="typ">SPSite</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="typ">Select</span><span class="pln"> </span><span class="typ">RootWeb</span><span class="pun">,</span><span class="pln"> URL<br /> <br /> </span><span class="kwd">foreach</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$site </span><span class="kwd">in</span><span class="pln"> $sites</span><span class="pun">){</span><span class="pln"><br /> <br /> $ListName </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Audit Logs"</span><span class="pln"><br /> $PermissionLevel </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Full Control"</span><span class="pln"><br /> $web </span><span class="pun">=</span><span class="pln"> $site</span><span class="pun">.</span><span class="pln">rootweb<br /> </span><span class="com">#$web = Get-SpSite -identity $site.url</span><span class="pln"><br /> </span><span class="com">#$web = Get-SPWeb -Identity $site.url </span><span class="pln"><br /> $list </span><span class="pun">=</span><span class="pln"> $web</span><span class="pun">.</span><span class="typ">Lists</span><span class="pln"> </span><span class="pun">|</span><span class="pln"> </span><span class="kwd">where</span><span class="pln"> </span><span class="pun">{</span><span class="pln">$_</span><span class="pun">.</span><span class="typ">Title</span><span class="pln"> </span><span class="pun">-</span><span class="pln">match $ListName</span><span class="pun">}</span><span class="pln"><br /> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$list </span><span class="pun">-</span><span class="pln">ne $null</span><span class="pun">)</span><span class="pln"><br /> </span><span class="pun">{</span><span class="pln"><br /> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$list</span><span class="pun">.</span><span class="typ">HasUniqueRoleAssignments</span><span class="pln"> </span><span class="pun">-</span><span class="pln">eq $False</span><span class="pun">)</span><span class="pln"><br /> </span><span class="pun">{</span><span class="pln"><br /> $list</span><span class="pun">.</span><span class="typ">BreakRoleInheritance</span><span class="pun">(</span><span class="pln">$True</span><span class="pun">)</span><span class="pln"> <br /> </span><span class="pun">}</span><span class="pln"><br /> <br /> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$list</span><span class="pun">.</span><span class="typ">HasUniqueRoleAssignments</span><span class="pln"> </span><span class="pun">-</span><span class="pln">eq $True</span><span class="pun">)</span><span class="pln"><br /> </span><span class="pun">{</span><span class="pln"><br /> </span><span class="typ">ForEach</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$SiteGroup </span><span class="kwd">in</span><span class="pln"> $web</span><span class="pun">.</span><span class="typ">SiteGroups</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> <br /> <br /> </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$SiteGroup</span><span class="pun">.</span><span class="typ">Name</span><span class="pln"> </span><span class="pun">-</span><span class="pln">match </span><span class="str">"Owners"</span><span class="pun">)</span><span class="pln"><br /> </span><span class="pun">{</span><span class="pln"><br /> </span><span class="com">#write-host $SiteGroup.Name</span><span class="pln"><br /> $GroupName </span><span class="pun">=</span><span class="pln"> $SiteGroup</span><span class="pun">.</span><span class="typ">Name</span><span class="pln"><br /> $roleAssignment </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pun">-</span><span class="kwd">object</span><span class="pln"> </span><span class="typ">Microsoft</span><span class="pun">.</span><span class="typ">SharePoint</span><span class="pun">.</span><span class="typ">SPRoleAssignment</span><span class="pun">(</span><span class="pln">$SiteGroup</span><span class="pun">)</span><span class="pln"><br /> $roleDefinition </span><span class="pun">=</span><span class="pln"> $web</span><span class="pun">.</span><span class="typ">RoleDefinitions</span><span class="pun">[</span><span class="pln">$PermissionLevel</span><span class="pun">];</span><span class="pln"><br /> $roleAssignment</span><span class="pun">.</span><span class="typ">RoleDefinitionBindings</span><span class="pun">.</span><span class="typ">Add</span><span class="pun">(</span><span class="pln">$roleDefinition</span><span class="pun">);</span><span class="pln"><br /> $list</span><span class="pun">.</span><span class="typ">RoleAssignments</span><span class="pun">.</span><span class="typ">Add</span><span class="pun">(</span><span class="pln">$roleAssignment</span><span class="pun">)</span><span class="pln"><br /> $list</span><span class="pun">.</span><span class="typ">Update</span><span class="pun">();</span><span class="pln"><br /> </span><span class="typ">Write</span><span class="pun">-</span><span class="typ">Host</span><span class="pln"> </span><span class="str">"Successfully added <$GroupName> to the <$ListName> list in <$site>. "</span><span class="pln"> </span><span class="pun">-</span><span class="pln">foregroundcolor </span><span class="typ">Green</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"> <br /> </span><span class="kwd">else</span><span class="pln"><br /> </span><span class="pun">{</span><span class="pln"><br /> </span><span class="typ">Write</span><span class="pun">-</span><span class="typ">Host</span><span class="pln"> </span><span class="str">"No Owners groups exist."</span><span class="pln"> </span><span class="pun">-</span><span class="pln">foregroundcolor </span><span class="typ">Red</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"><br /> </span><span class="pun">}</span><span class="pln"><br /></span>Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-55146554963164463312013-02-15T07:38:00.003+05:302013-02-15T07:51:54.724+05:30Delete site completely<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="mso-ascii-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: Calibri;"><span style="font-family: Arial;"><div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<strong>Do you want to delete your site completely?<o:p></o:p></strong></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<span style="font-family: 'Arial','sans-serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';">After deleting your site, just run below two commands in PowerShell.</span><span style="font-family: 'Times New Roman','serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"><o:p></o:p></span></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<strong>Get-SPDeletedSite -Identity "your site URL"<o:p></o:p></strong></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<span style="font-family: 'Arial','sans-serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';">After running the first command, it will generate the id like (610857cb-8414-4a89-8bf3-ad3628f6c86)<o:p></o:p></span></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<span style="font-family: 'Arial','sans-serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';">Note: Use the id to next command</span><span style="font-family: 'Times New Roman','serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"><o:p></o:p></span></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<strong>Remove-SPDeletedSite -Identity "Above generated id"<o:p></o:p></strong></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 0pt;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; margin: 0in 0in 6pt;">
<span style="font-family: 'Arial','sans-serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';">If you got error while running this command, your site already deleted <span style="mso-bidi-font-weight: bold;">completely</span>.</span><span style="font-family: 'Times New Roman','serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin: 0in 0in 0pt;">
</div>
</span></span><span style="mso-ascii-font-family: Calibri; mso-bidi-font-family: Calibri; mso-fareast-font-family: 'Times New Roman'; mso-hansi-font-family: Calibri;"><span style="font-family: Arial;"></span></span>
<br />
<div>
</div>
<div class="MsoNormal" style="margin: 0in 0in 0pt;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-11476436606965546562013-02-14T09:34:00.001+05:302013-02-14T09:34:34.625+05:30Senario : Sharepoint Site is not loading or slow<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="divContent" style="text-align: justify;">
Is your home <a class="InboundLink" href="http://www.go4sharepoint.com/Forum/rss-reader-not-display-page-9067.aspx" target="_blank">page</a> in a <a class="InboundLink" href="http://www.go4sharepoint.com/Forum/stsadm-site-directory-2059.aspx" target="_blank">site</a> collection that has the <strong>Publishing infrastructure feature</strong> activated? For example, built off the Collaborative Portal site definition. If so, then your problem is probably just that Page and Fragment caching is disabled. Go to Site Settings for your top level site. </div>
<div class="divContent" style="text-align: justify;">
<br /></div>
<div class="divContent" style="text-align: justify;">
In the <strong>Site Collection Administration</strong> column you will see an entry to <strong>Site Collection Output Cache</strong> settings. Go to that page and click the checkbox to enable Output caching. On the same page use the dropdowns to select the anonymous profile for Anonymous Cache and the Intranet profile for the Authenticated Cache. If the checkbox is already checked, make sure you aren't overriding the profiles at the site level by looking at the site output cache settings from the Site Settings page.<br /><br />If this does not cause a marked improvement on the second page refresh then you have a deeper problem. But Output caching is the most common issue. If its not output caching then we need to talk about the webparts etc on the <a class="InboundLink" href="http://www.go4sharepoint.com/Forum/2-modify-home-page-14229.aspx" target="_blank">home</a> page or any custom code you've added to the home page.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-25131748079910438072013-02-14T09:13:00.003+05:302013-02-14T09:14:29.054+05:30Multiple User in Remote Desktop<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="entry">
When working with Windows Server and connecting to a server via Remote Desktop, one might stumble upon the following error message:<br />
<blockquote>
Windows Server: The terminal server has exceeded the maximum number of allowed connections</blockquote>
It turns out that even after clicking “OK”, you will not be able to connect to the server and your session will be terminated. But how to fix this problem without physically going to the server?<br />
<span id="more-2155"></span>Here is a screenshot:<br />
<a href="http://www.krenger.ch/wp-content/uploads/2012/06/terminal-sever-exceeded-maximum-number-of-allowed-connections.png"><img alt="Error message stating "The terminal server has exceeded the maximum number of allowed connections"" class="aligncenter size-full wp-image-2159" height="139" src="http://www.krenger.ch/wp-content/uploads/2012/06/terminal-sever-exceeded-maximum-number-of-allowed-connections.png" title="The terminal server has exceeded the maximum number of allowed connections" width="483" /></a><br />
<br />
The reason for this error message is quite simple: A terminal server only accepts a finite number of simultaneous connections. Now, when a user connects to a Windows Server, does his thing and then simply closes the Remote Desktop window, the session on the server is not closed but kept open. So the <strong>user will remain logged on</strong>.<br />
<strong>The correct way</strong> to terminate a Remote Desktop session is to select <strong>“Start”</strong>, then <strong>“Log off”</strong>. This will close the session and allows other users to connect to the server.<br />
<h3>
Resolving the problem</h3>
To connect to the Terminal Server despite the limited connections, what we can do is to connect to the server with the <em>/admin</em> switch. To do this, launch <a href="http://technet.microsoft.com/en-us/library/cc753907(v=ws.10)">mstsc</a> as follows:<br />
<pre><code>mstsc /v:n.n.n.n /admin</code></pre>
Replace <em>n.n.n.n</em> with the IP of the server and you’re good to go. Once connected to the server, use Task Manager to log off the sessions that are no longer used. The following screenshot shows that there is one connection that has no current connections and can be logged off:<br />
<a href="http://www.krenger.ch/wp-content/uploads/2012/06/windows-task-manager-logoff-other-user.png"><img alt="Windows Task Manager window" class="aligncenter size-full wp-image-2162" height="546" src="http://www.krenger.ch/wp-content/uploads/2012/06/windows-task-manager-logoff-other-user.png" title="Windows Task Manager: Logoff other user" width="562" /></a><br />
To do this, select the session you wish to disconnect (in my case that is the session with the ID 3) and click “Logoff”. Note that this will effectively log off the session and closes all windows still open in that session!<br />
Once these steps have been completed, log your current session off and you should be able to reconnect to the server without using the <em>/admin</em> switch.</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-90525412164791387902013-02-06T12:58:00.001+05:302013-02-06T13:01:57.347+05:30Standard Upload Mode <div dir="ltr" style="text-align: left;" trbidi="on">
<table><tbody>
<tr><td class="dx-title"></td><td class="dx-logo"></td></tr>
</tbody></table>
<strong>Standard Upload Mode</strong> is enabled if the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_UploadModetopic.aspx">ASPxUploadControl.UploadMode</a> property is set to <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlUploadControlUploadModeEnumtopic.aspx">UploadControlUploadMode.Standard</a>. <br />
<div class="dx-main" id="AspNet/CustomDocument9886/dx-top" name="AspNet/CustomDocument9886/dx-top">
<div>
<br />
This is a standard <a href="http://msdn.microsoft.com/en-us/library/ms227677.aspx">FileUpload</a>-based upload mode in which the uploaded file is sent to the server in one request and is cached in its entirety in server memory. This mode works well with small files, but is not suitable for uploading large files (such as 1GB). The ASP.NET worker process has a virtual address space of 2 gigabytes (GB). However, the ASP.NET worker process only uses a little more than 1 GB because of health monitoring and memory fragmentation (see the <a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;295626">Cannot Upload Large Files...</a> Microsoft topic for more detail). <br />
<br />
Additionally, ASPxUploadControl requires memory for progressing. Therefore, the real maximum size of a file, which can be uploaded using ASPxUploadControl in the standard upload mode with enabled progressing (the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_ShowProgressPaneltopic.aspx">ASPxUploadControl.ShowProgressPanel</a> property is set to <b>true</b>), is about 2GB/3 = 633MB. <br />
<br />
Allowing large file uploads in this mode also requires increasing the Request length limit (via a Web.Config file's <a href="http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.maxrequestlength.aspx">maxRequestLength</a> configuration setting), which is not protected against the rejection of service (<a href="http://en.wikipedia.org/wiki/Denial-of-service_attack">DoS</a>) attacks that are caused by users who post large files to the server. <br />
<br />
<br />
<div class="dx-regiontitle">
<strong>Advanced Upload Mode </strong></div>
<div class="dx-regiontitle">
</div>
<div class="dx-regiontoggle">
</div>
<div class="dx-clear">
</div>
To enable the Advanced Upload Mode, set the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_UploadModetopic.aspx">ASPxUploadControl.UploadMode</a> property to <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlUploadControlUploadModeEnumtopic.aspx">UploadControlUploadMode.Advanced</a>. You can access and customize the settings that relate to the Advanced Mode using the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_AdvancedModeSettingstopic.aspx">ASPxUploadControl.AdvancedModeSettings</a> property. <br />
<br />
In this mode, the uploaded file is sent to the server in small packets (one by one) and is saved into a temporary file within a specific server folder. <br />
<br />
The Advanced Mode's implementation is based on modern technologies provided by <a href="http://www.microsoft.com/silverlight/what-is-silverlight/">Microsoft Silverlight</a>. So it is required that your end-users have the Silverlight plug-in (version 3 or later) installed in their browsers. If this plug-in is not installed or is disabled, a specific message is rendered instead of the ASPxUploadControl, providing end-users with a Silverlight download link. <br />
<img src="http://documentation.devexpress.com/HelpResource.ashx?help=AspNet&document=img13840.jpg" /><br />
<strong>Using the Advanced Mode has the following benefits. </strong><br />
<ul type="disc">
<li><b>Uploading Large Files</b> Sending a file in small packets allows end-users to upload large files (up to 2GB) without using a huge amount of web server memory, because only one packet per file is stored in memory at one time. The packet size (which by default is 200 kilobytes) can be customized via the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlUploadAdvancedModeSettings_PacketSizetopic.aspx">UploadAdvancedModeSettings.PacketSize</a> property. A server folder to which each uploaded file is saved can also be specified via the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlUploadAdvancedModeSettings_TemporaryFoldertopic.aspx">UploadAdvancedModeSettings.TemporaryFolder</a> property (default path is "~\App_Data\UploadTemp\"). <br />After the file upload is finished, you can access the uploaded file as a file stream by using the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlUploadedFile_FileContenttopic.aspx">UploadedFile.FileContent</a> property of the related <a href="http://documentation.devexpress.com/AspNet/clsDevExpressWebASPxUploadControlUploadedFiletopic.aspx">UploadedFile</a> object, while handling the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_FilesUploadCompletetopic.aspx">ASPxUploadControl.FilesUploadComplete</a> or <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_FileUploadCompletetopic.aspx">ASPxUploadControl.FileUploadComplete</a> server event. <br /><table class="dx-tabs" id="dxxTab150"><tbody>
<tr><td><table class="dx-tabs-inner" id="dxxTab150_tabs"><tbody>
<tr><td><img src="http://documentation.devexpress.com/HelpResource.ashx?help=AspNet&document=dx-active-tab-left.gif" /></td><td class="dx-tabs-header dx-active"><div>
C#</div>
</td><td><img src="http://documentation.devexpress.com/HelpResource.ashx?help=AspNet&document=dx-active-tab-right.gif" /></td><td class="dx-tabs-filler"><div>
</div>
</td></tr>
</tbody></table>
</td></tr>
<tr><td><div class="dx-tabs-contents" style="display: block;">
<pre> <span class="cr-cs-keyword">protected</span> <span class="cr-cs-keyword">void</span> ASPxUploadControl1_FileUploadComplete(<span class="cr-cs-keyword">object</span> sender, FileUploadCompleteEventArgs e) {
<span class="cr-cs-keyword">using</span>(Stream stream = e.UploadedFile.FileContent) {
stream.Read(...);
}
}
</pre>
</div>
</td></tr>
</tbody></table>
<table id="dxxTab150_data" style="display: none;"><tbody>
<tr><td>C#</td><td><pre> <span class="cr-cs-keyword">protected</span> <span class="cr-cs-keyword">void</span> ASPxUploadControl1_FileUploadComplete(<span class="cr-cs-keyword">object</span> sender, FileUploadCompleteEventArgs e) {
<span class="cr-cs-keyword">using</span>(Stream stream = e.UploadedFile.FileContent) {
stream.Read(...);
}
}
</pre>
</td></tr>
</tbody></table>
<div class="dx-alert2">
<table cellpadding="0" cellspacing="0"><tbody>
<tr><th align="left"><img alt="Note" class="dx-note2" src="http://documentation.devexpress.com/HelpResource.ashx?help=AspNet&document=note.gif" />Note </th></tr>
<tr><td>When using the Advanced Mode, operating the uploaded file's stream within the <a href="http://msdn.microsoft.com/en-us/library/yh598w02.aspx">using</a> statement (<a href="http://msdn.microsoft.com/en-us/library/htd05whh.aspx">Using</a> statement in Visual Basic) is required. </td></tr>
</tbody></table>
</div>
Refer to the <a href="http://documentation.devexpress.com/AspNet/CustomDocument9822.aspx">Uploading Large Files</a> topic to learn more on how to customize ASPxUploadControl for large file uploads. </li>
<li><b>Preventing DoS Attacks</b> In the Advanced Mode, you are not required to define a large value for the Request length limit (controlled by the <a href="http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.maxrequestlength.aspx">maxRequestLength</a> configuration setting within Web.Config), since large files are sent in small chunks. A large value of <b>maxRequestLength</b> makes a website more vulnerable to the rejection of service attacks that may be caused by end-users posting a great number of large files to the server. So using the Advanced Mode allows you to keep the Request length limit reasonably small, preventing potential DoS attacks. </li>
<li><b>Client-Side Validation</b> Using the functionality provided by Microsoft Silverlight, ASPxUploadControl is able to validate the file size and extension directly on the client side without sending files to the server. This prevents unnecessary traffic to the web server. Client validation is invoked automatically if the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlValidationSettings_MaxFileSizetopic.aspx">ValidationSettings.MaxFileSize</a> or <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlValidationSettings_AllowedFileExtensionstopic.aspx">ValidationSettings.AllowedFileExtensions</a> property is defined. After a file has passed client-side validation, ASPxUploadControl also performs a server-side validation check giving you extra protection. </li>
<li><b>Progress Indication in Medium Trust</b> With the Advanced Mode, the functionality of upload progress indication (controlled by the <a href="http://documentation.devexpress.com/AspNet/DevExpressWebASPxUploadControlASPxUploadControl_ShowProgressPaneltopic.aspx">ASPxUploadControl.ShowProgressPanel</a> property) works well in web environments that only allow <a href="http://msdn.microsoft.com/en-us/library/ms998341.aspx#paght000020_mediumtrustsummary">medium trust</a>. In contrast to the Standard Mode (where the current progress is not updated until file upload is completed), indication of the current progress is updated after each small file packet is uploaded. </li>
<li><b>Multi-File Selection in File Open Dialog</b> In an Advanced Mode, ASPxUploadControl supports the multi-file selection capability, allowing end-users to choose several files to upload within a single file open dialog. Refer to the <a href="http://documentation.devexpress.com/AspNet/CustomDocument10653.aspx">Multi-File Selection</a> topic to learn more. </li>
</ul>
<br /></div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-85353696428719487162013-02-04T10:59:00.004+05:302013-02-04T10:59:57.738+05:30Comparison of using SQL database mirroring or Log Shipping for SharePoint DR farm<div dir="ltr" style="text-align: left;" trbidi="on">
<strong>Database Mirroring:</strong><br />
<br />
•In database mirroring Real time transaction log shipping to secondary SQL Server. Incase of primary SQL server failure latest information will be available on Secondary SQL Server. <br />
<br />•As Database on Secondary SQL Server would be “Mirror, Synchronized / Restoring” We will not be able to attach the databases to web application on DR farm. Incase of Failover we will need to make the databases active and attach the databases to web applications. <br />
<br />•After failover when we attach the content database to the web application, it will automatically refresh the site map on Configuration database. <br />
<br />•As we cant attach the databases to the web applications, Search Service Application wont be able to crawl the content. After Fail-over you need to crawl the content. <br />
<br />•When failover happens we need to run SQL script to make the all content databases writeable. <br />
<strong>Database Log Shipping:</strong><br />
<br />
•In Log shipping transaction log backup, copy and restore happens on scheduled time (Minimum time 1Min). Incase of fail-over from primary SQL Server to Secondary SQL Server we might loose some data if that's not restored on SQL Secondary SQL Server or manually restore the transaction log backup to Secondary SQL Server database. <br />
<br />•As Database on Secondary SQL Server would be “Stand by/ Read-only” It will allow you to attach the databases to web application on DR farm and we can crawl the content using Search Service Application. <br />
•As the databases are attached to the web application we can run a script to refresh the Site Map on Configuration database. <br />
<br />•As we cant attach the databases to the web applications, Search Service Application wont be able to crawl the content. After Fail-over you need to crawl the content. <br />
<br />•When failover happens we need to run SQL script to make the all content databases writeable. <br />Changes required when you failover from Primary SharePoint 2010 to SharePoint 2010 DR Farm.<br />
<br />
<strong>If you are using SQL database mirroring:</strong><br />
<br />
•On the DNS Server make the changes so that all the request can be reached to DR Farm SharePoint 2010 WFEs. <br />
<br />•Run the SQL Query to make the database active. (ALTER DATABASE ContentDatabaseName SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS) <br />
<br />•Attach content databases to the web applications. <br />
<br />•Start a full Crawl process on Search Server. <br />
<strong>If you are using SQL database log shipping:</strong><br />
<br />
•On the DNS Server make the changes so that all the request can be reached to DR Farm SharePoint 2010 WFEs.<br />
<br />•Restore all the pending transaction logs backup to database.<br />
<br />•Run the SQL Query to make the database active. (RESTORE DATABASE contentdbname WITH RECOVERY) <br />
<br />•Start an Incremental Crawl process on Search Server. <br />
After knowing both the options, now you can choose between database mirroring and Database log shipping for DR farm configuration.<br />
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-12219745483545373332013-02-04T10:49:00.007+05:302013-02-04T10:49:54.372+05:30Overview to SQL log Shipping<div dir="ltr" style="text-align: left;" trbidi="on">
SQL log shipping allows to backup the transaction logs from primary SQL Server instance in regular interval to one or multiple secondary SQL Server instance. Transaction log backup are restored to all the Secondary SQL Server instances individually. <br />
<br />
<strong>SQL Log Shipping consist of 3 operations:</strong><br />
<br />
•Backup transaction log from the primary server
<div>
•Copy the transaction log backup to the secondary server or secondary servers </div>
<div>
•Restore the transaction log backup to the secondary server instance </div>
<div>
</div>
Above 3 operation will create 3 jobs on SQL Servers. Backup Job will be only available on Primary SQL Server instance. However, Secondary SQL Server instance contains the Copy job and Restore job. All these job executes in regular interval and you can define the time. SQL agent service has to be on running for log shipping.<br />
<br />
•<strong>Log Shipping Advantages</strong>:<br />
<br />
<div>
</div>
<div>
Flexibility to backup, copy and restore the transaction logs. </div>
<ul style="text-align: left;">
<li>Due to scheduled jobs database corruption can be avoided. </li>
<li>Multiple secondary databases can be configured </li>
<li>Secondary databases are in read-only and standby mode and can queried if required. </li>
<li>Log shipping allows multiple standby databases </li>
</ul>
<div>
<strong>•Log Shipping Disadvantages: </strong></div>
<div>
<strong></strong> </div>
<ul style="text-align: left;">
<li>No option for automatic failover </li>
<li>Minimum time to synchronize is a min. which can be configured. </li>
<li>For failover need to execute SQL Query. not simple as database mirroring. </li>
</ul>
<div>
<strong>Note</strong>:- Transaction Log Shipping can be configured for the databases having Full Recovery Model. It can not be configured </div>
<div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-74316005090230275052013-02-04T10:25:00.005+05:302013-02-04T10:28:21.976+05:30SQL Database Mirroring<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: justify;">
Database mirroring feature is available in SQL 205 and SQL 2008. Its a solution to provide database high availability and its configured per-database basis. You can only configure the database mirroring for the databases that use the full recovery model. You cannot configure the database mirroring for the System Databases (master, msdb, tempdb & model). </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
In database mirroring there will be 2 copies of a single database residing on 2 different SQL instance. One SQL server instance act as Primary server and holds the active databases. All the clients or applications connect to this database server. Other SQL Server instance act as Secondary server or mirror server which holds the hot or warm databases. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Once the database mirroring has been configured and databases are synchronized state, failover can be performed without a loss of data. While you configure the SQL database mirroring you can also configure the Witness server. This is going to another SQL instance which would be monitoring the primary SQL server instance. If primary SQL Service fails then witness server will automatically failover the databases from primary SQL server instance to Secondary SQL server instance.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>There are 2 operating modes for configuring Database mirroring:</strong></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
•<strong>Asynchronous</strong>: This doesn't need the Witness Instance, that means there is no automatic failover. Once the Database server is not available administrator to stop the database mirroring session manually. <br />
•<strong>Synchronous</strong>: You can configure this with witness server (optional). If you configure with witness server then you get the advantage of automatic failover feature. However, automatic failover requires both the databases to synchronized. </div>
<div style="text-align: justify;">
<br />
Lets look at the advantages and disadvantages of database mirroring.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
•<strong>Database Mirroring Advantages:</strong><br />
<br />
◦Easy setup and maintenance <br />
◦Real-time synchronization of transaction log <br />
◦Automated failover (in High Availability Mode, Witness Server Instance required) <br />
◦Fast & easy Failover<br />
◦Using connection strings you can make your application mirroring aware or using SQL alias. </div>
<div style="text-align: justify;">
•<strong>Database Mirroring limitations: </strong><br />
<br />
◦Database mirroring is configured per database not per SQL server Instance.<br />
◦Mirror database always in recovery mode and this database can’t be used for any purpose or database queries. <br />
◦Database mirroring can only configured for one database to another database. There can’t be more secondary server. <br />
◦Database mirroring can’t be configured for once database once than once. </div>
<div style="text-align: justify;">
<br />
<strong>Note</strong>:- Database mirroring can be configured for the databases having Full Recovery Model. Database mirroring can not be </div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-48838362562905750782013-02-04T08:43:00.004+05:302013-02-04T09:43:36.207+05:30Black screen on Remote Desktop Connection(RDC)<div dir="ltr" style="text-align: left;" trbidi="on">
When you try to connect to a remote desktop using mstsc command, after successfully logging in the screen appears black. It seems the remote server has stopped responding.<br />
<br />
However the system is processing you request in the background.<br />
<br /><strong>Solution</strong><br />
1. Check if too many users connected to the server.If so , request them to free the session.<br />
2. Check if too many processes, services or tasks are running.<br />
<br />To do so, the trick is to press 'Ctrl + Alt + End' key. This will open task manager. Here you can check both, number of users logged on in the Users Tab and running processes in Processes tab.</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-32523324443303968842013-01-31T08:47:00.003+05:302013-02-04T09:42:47.372+05:30Features in SharePoint 2010 <div dir="ltr" style="text-align: left;" trbidi="on">
<div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
<span lang=""><div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
<strong>SharePoint 2010 contains lots of features. Some of the features list below</strong></div>
<div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
<br /></div>
<b><div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: Wingdings;">à</span> Under Sites</div>
<div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
<br /></div>
<div align="justify" dir="ltr" style="text-align: left;" trbidi="on">
Accessibility:</div>
<div dir="ltr" style="text-align: justify;" trbidi="on">
</div>
</b>Use SharePoint more effectively with improved accessibility, including built-in support for keyboard navigation and support for industry-wide accessibility standards.</span>
</div>
<div>
</div>
<div dir="ltr" style="text-align: justify;" trbidi="on">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<b><div align="justify" dir="ltr">
Cross-Browser Support:</div>
<div style="text-align: justify;">
</div>
</b>Access SharePoint through Internet Explorer, Firefox, and Safari
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Multi-lingual User Interface:</strong></div>
<div style="text-align: justify;">
<span lang="">Take advantage of out-of-the-box support for multilingual experiences in SharePoint 2010. Give your people language options in site navigation, menus, the SharePoint Ribbon, and customized list fields. </span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<b></b></div>
<div dir="ltr" style="text-align: justify;">
<strong>Out-of-Box Web parts:</strong></div>
<div style="text-align: justify;">
Use more than 40 out-of-the-box Web Parts to add functionality anywhere in a site with point-and-click simplicity. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>SharePoint Health Analyzer:</strong></div>
<div style="text-align: justify;">
Quickly find and fix potential problems across all of the servers in your farm. The SharePoint Health Analyzer monitors farm health and can automatically fix many common configuration and performance problems. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>SharePoint Ribbon:</strong></div>
<div style="text-align: justify;">
Quickly find and fix potential problems across all of the servers in your farm. The SharePoint Health Analyzer monitors farm health and can automatically fix many common configuration and performance problems. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Streamlined Central Administration:</strong></div>
<div style="text-align: justify;">
Manage SharePoint 2010 more efficiently with a streamlined administration experience. Use the SharePoint Ribbon to configure and manage your server farm. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Unattached Content Database Recovery:</strong></div>
<div style="text-align: justify;">
Temporarily mount an unattached content database and browse content, back up a site collection, or export sites and lists without a recovery farm. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Visual Upgrade:</strong></div>
<div style="text-align: justify;">
Upgrade to SharePoint 2010 but keep the SharePoint 2007 look-and-feel until you are ready to switch. View a site with the SharePoint 2010 user interface before committing to it. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Web parts:</strong></div>
<div style="text-align: justify;">
Use Web Parts to add new functionality to SharePoint sites. Add a Web Part to any page and the new functionality will appear when the page is displayed. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Windows PowerShell support:</strong></div>
<div style="text-align: justify;">
Achieve greater control and productivity with Windows PowerShell, a command line shell and scripting language. SharePoint 2010 offers a snap-in so you can take advantage of PowerShell for your SharePoint deployments and manage your server farm and automate tasks with out-of-the-box cmdlets. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<span style="font-family: Wingdings;">à</span> <b>Under Communities</b></div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Blogs</strong>:</div>
<div dir="ltr" style="text-align: justify;">
Use the new SharePoint Ribbon to format blog text and easily upload images.</div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Colleague Suggestion:</strong></div>
<div style="text-align: justify;">
Keep your colleague network current with an automated service that suggests colleagues based on your reporting structure, communities membership, e-mail distribution lists, Office Communicator contact lists, and analysis of most common Office Outlook e-mail recipients. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>My Content:</strong></div>
<div style="text-align: justify;">
Centrally store and manage your documents, favorite links, personal blog, and wiki pages on the My Content section of your My Site. Customize your pages and set access and permission levels for any content in the section. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>My profile:</strong></div>
<div style="text-align: justify;">
Centrally store and manage your documents, favorite links, personal blog, and wiki pages on the My Content section of your My Site. Customize your pages and set access and permission levels for any content in the section. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Organization browser:</strong></div>
<div style="text-align: justify;">
Navigate your organizational structure to see managers, peers, and direct reports. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Photos and Presence:</strong></div>
<div dir="ltr" style="text-align: justify;">
Help people recognize each other with photos. Use presence to email, IM, or call someone with the click of a button. </div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Rating:</strong></div>
<div style="text-align: justify;">
Rate SharePoint pages, lists, libraries, and individual documents with a five-star rating system. </div>
<div style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Recent Activities:</strong></div>
<div style="text-align: justify;">
Rate SharePoint pages, lists, libraries, and individual documents with a five-star rating system. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Tags:</strong></div>
<div style="text-align: justify;">
Rate SharePoint pages, lists, libraries, and individual documents with a five-star rating system. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Wikis:</strong></div>
<div style="text-align: justify;">
Create pages that combine the ease of wikis with the functionality of Web Parts. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong><span style="font-family: Wingdings;">à</span> Under Content</strong></div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Compliance Everywhere:</strong></div>
<div style="text-align: justify;">
Manage versions, apply retention schedules, declare records, and place legal holds, whether you're dealing with traditional content, Web content, or social content. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Document Sets:</strong></div>
<div style="text-align: justify;">
Create a Document Set to manage related content as a single entity, speeding up common processes like RFP responses. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong><span style="font-family: Wingdings;">à</span> Under Search</strong></div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Contextual search:</strong></div>
<div style="text-align: justify;">
Tailor different results and refinement options based on the profile of the user or audience. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Metadata-driven Refinement:</strong></div>
<div style="text-align: justify;">
Use the new refinement panel in SharePoint 2010 to narrow the results of your search and find the right content faster. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>People and Enterprise search:</strong></div>
<div style="text-align: justify;">
Search for people by name or by associated terms. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong><span style="font-family: Wingdings;">à</span> Under Insights</strong></div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Business Intelligence Center:</strong></div>
<div style="text-align: justify;">
Use the examples in this dedicated SharePoint site template to help you get started with your Business Intelligence projects. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Dashboards:</strong></div>
<div style="text-align: justify;">
Create rich dashboards that convey the right information the first time, aggregating content from multiple sources and displaying it in a Web browser in an understandable and collaborate environment. Rich interactivity lets you to analyze up-to-the-minute information and work with the data quickly and easily to identify key opportunities and trends. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Decomposition Tree:</strong></div>
<div style="text-align: justify;">
Perform root cause analyses using powerful analytics to examine core data. View only the most pertinent information using the new Decomposition Tree. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Visio Services:</strong></div>
<div style="text-align: justify;">
Publish Visio 2010 diagrams to SharePoint 2010 to let your people view and refresh diagrams in a browser without opening Visio. Integrate diagrams into other SharePoint applications and develop rich mash-ups. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong><span style="font-family: Wingdings;">à</span> Under Composites</strong></div>
<div dir="ltr" style="text-align: justify;">
<br /></div>
<div dir="ltr" style="text-align: justify;">
<strong>Access Services:</strong></div>
<div style="text-align: justify;">
Publish Visio 2010 diagrams to SharePoint 2010 to let your people view and refresh diagrams in a browser without opening Visio. Integrate diagrams into other SharePoint applications and develop rich mash-ups. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Browser-based Customizations:</strong></div>
<div style="text-align: justify;">
Customize pages and Web Parts to create Web sites that meet your specific business needs. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Business Connectivity Services:</strong></div>
<div style="text-align: justify;">
Work with external data, whether online or offline, in SharePoint 2010 and Microsoft Office 2010 applications using Business Connectivity Services (BCS, formerly named the Business Data Catalog). <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Sandboxed Solutions:</strong></div>
<div style="text-align: justify;">
Maintain security and manage system performance with Sandbox Solutions. Sandbox Solutions separate code from other processes, improving the security and helping you control resources and prevent performance problems. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>SharePoint Designer:</strong></div>
<div style="text-align: justify;">
Deliver no-code customizations with the new tools in SharePoint Designer, including List and Content Type editors, reusable workflows, XSLT templates, and external content types. <br />
</div>
<div dir="ltr" style="text-align: justify;">
<strong>Silverlight Web Part:</strong></div>
<div dir="ltr" style="text-align: justify;">
Upload Silverlight XAP applications to a document library and use them immediately with the built-in Silverlight Web Part. </div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0tag:blogger.com,1999:blog-2561841574952183034.post-42178497717395353952013-01-30T09:56:00.002+05:302013-02-04T09:43:36.206+05:30How to add the Facebook Social plugins to your website <div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: justify;" trbidi="on">
There are 3 steps to adding the Facebook Social Plugins to your website.</div>
<div dir="ltr" style="text-align: justify;" trbidi="on">
<br /></div>
<div dir="ltr" style="text-align: justify;" trbidi="on">
<strong>1.Getting an Application ID</strong></div>
<div dir="ltr" style="text-align: justify;" trbidi="on">
<ol> - This is needed so you can use 100% of the Social Plugin functionality.</ol>
</div>
<div style="text-align: justify;">
<strong><div align="justify">
2.Adding the Facebook SDK to the header of your website</div>
<div align="justify">
<br /></div>
<div style="text-align: justify;">
</div>
</strong>- or at least the header of the pages you want to add the Social Plugins too.
</div>
<div style="text-align: justify;">
<br /></div>
<div align="justify">
<strong>3.Adding the code for each Social Plugin you wish to use</strong></div>
<div align="justify">
<br /></div>
<div style="text-align: justify;">
</div>
<div>
</div>
. The most common mistake I've seen is people not getting their own Application ID. The Like button Social Plugin for example is easily added to your website, however if you don't have your own Application ID, the number of "likes" isn't kept after you leave your website and come back. The same applies with the Comments Social Plugin, and some of the other Social Plugins flat out will not work without your own Application ID. <br />
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Step 1</strong> - Get an Application ID</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Before you can use 100% of all of the Facebook Social Plugin functionality, and almost the entire functionality of the Comments Facebook Social Plugin, you must first get yourself a Facebook Application ID. This is a very simple process, just follow the instructions below: </div>
<ol>
<li><div style="text-align: justify;">
Go to: <a href="http://developers.facebook.com/setup/">http://developers.facebook.com/setup/</a>, enter your facebook account info if prompted.</div>
</li>
<li><div style="text-align: justify;">
Enter the name of the website, for example "Gareth Hooper's Blog", as well as the Site URL (garethhooper.com/ for example, and don't forget the / on the end), and select the correct locale. Then click Create Application.</div>
</li>
<li><div style="text-align: justify;">
Enter the security check, and click Submit.</div>
</li>
<li><div style="text-align: justify;">
Make a note of the App ID and APP Secret. You will definitely need the App ID for Step 2. Please bear in mind that it may take as long as 20 minutes for the App ID to propagate out, so if you literally try to use it immediately after getting the ID, it may not work correctly.</div>
</li>
</ol>
<div style="text-align: justify;">
<strong>Step 2</strong> - Add the Facebook SDK </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
You need to add the Facebook SDK (think of it of more as a library that the Social Plugins need to access) to your website as a whole, or at least to the pages where you intend have Social Plugins.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
To do this, you will need to add the following code to the header of at least every page you intend to have a Social Plugin. If you are using Wordpress or Joomla like I am, you should just try to the SDK code as close to the top of the page as possible. It just needs to load in the visitor’s web browser before the Social Plugin code does.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>DON'T FORGET TO REPLACE THE APP ID IN THE CODE WITH THE APP ID YOU GOT IN STEP 1 ABOVE.</strong></div>
<div style="text-align: justify;">
<table border="0" cellspacing="0" dir="ltr" style="width: 624px;"><tbody>
<tr><td valign="center"><div dir="ltr">
<div id="fb-root"></div><br />
<script><br />
window.fbAsyncInit = function() {<br />
FB.init({appId: '<strong>your app id</strong>', status: true, cookie: true,<br />
xfbml: true});<br />
};<br />
(function() {<br />
var e = document.createElement('script'); e.async = true;<br />
e.src = document.location.protocol +<br />
'//connect.facebook.net/en_US/all.js';<br />
document.getElementById('fb-root').appendChild(e);<br />
}());<br />
</script> <br />
<div dir="ltr">
<br /></div>
</div>
</td></tr>
</tbody></table>
</div>
<div style="text-align: justify;">
<strong>Step 3</strong> - Adding the Social PluginsNow that the Facebook SDK (with your own Application ID) has been added, the rest is easy, just add the Social Plugin code. People who use Wordpress and Joomla, you do need to be conscious of the fact that the Facebook SDK needs to load BEFORE the Social Plugin, so if you experience any problems, move the Social Plugin to the bottom of the page (so it is one of the last things to load) and see if you fixes the problem. It may not be a permanent fix, but at least you would have identified the problem. The permanent fix of course would be to move the Facebook SDK closer to the top of the page. </div>
<h4 style="text-align: justify;">
Getting the Code for each Social Plugin</h4>
<div style="text-align: justify;">
<strong>Social Plugin #1 - Like Button</strong><a href="http://www.blogger.com/articles/social-media/45-integration/153-overview-of-the-new-facebook-social-plugins-part-1-of-3.html#like_button">My detailed description of what the Like Button does</a>.</div>
<div style="text-align: justify;">
To get the code for the Like Button, go to the <a href="http://developers.facebook.com/docs/reference/plugins/like">Facebook Developers page for the Like Button</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #2 - Like Box</strong><a href="http://www.blogger.com/articles/social-media/45-integration/153-overview-of-the-new-facebook-social-plugins-part-1-of-3.html#like_box">My detailed description of what the Like Box does</a>.</div>
<div style="text-align: justify;">
To get the code for the Like Box, go to the <a href="http://developers.facebook.com/docs/reference/plugins/like-box">Facebook Developers page for the Like Box</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #3 - Comments</strong><a href="http://www.blogger.com/articles/social-media/45-integration/154-overview-of-the-new-facebook-social-plugins-part-2-of-3.html#comments">My detailed description of what the Comments plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Comments plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/comments">Facebook Developers page for the Comments plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #4 - Recommendations</strong><a href="http://www.blogger.com/articles/social-media/45-integration/154-overview-of-the-new-facebook-social-plugins-part-2-of-3.html#Recommendations">My detailed description of what the Recommendations plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Recommendations plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/recommendations">Facebook Developers page for the Recommendations plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #5 - Activity Feed</strong><a href="http://www.blogger.com/articles/social-media/45-integration/154-overview-of-the-new-facebook-social-plugins-part-2-of-3.html#activity_feed">My detailed description of what the Activity Feed plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Activity Feed plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/activity">Facebook Developers page for the Activity Feed plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #6 - Live Stream</strong><a href="http://www.blogger.com/articles/social-media/45-integration/156-overview-of-the-new-facebook-social-plugins-part-3-of-3.html#live_stream">My detailed description of what the Live Stream plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Live Stream plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/live-stream">Facebook Developers page for the Live Stream plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #7 - Login with Faces</strong><a href="http://www.blogger.com/articles/social-media/45-integration/156-overview-of-the-new-facebook-social-plugins-part-3-of-3.html#login_with_faces">My detailed description of what the Login with Faces plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Login with Faces plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/login">Facebook Developers page for the Login with Faces plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<strong>Social Plugin #8 - Facepile</strong><a href="http://www.blogger.com/articles/social-media/45-integration/156-overview-of-the-new-facebook-social-plugins-part-3-of-3.html#facepile">My detailed description of what the Facepile plugin does</a>.</div>
<div style="text-align: justify;">
To get the code for the Facepile plugin, go to the <a href="http://developers.facebook.com/docs/reference/plugins/facepile">Facebook Developers page for the Facepile plugin</a>, customize it as you like, and then click the Get Code button to get the code to add to your website.</div>
<div style="text-align: justify;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/12045029718882331894noreply@blogger.com0