Resolving “Sorry this site hasn’t been shared with you…” SharePoint site error:

Alright .I’ve had a pretty tedious week with SharePoint search were all of sudden the “SharePoint Enterprise search “  site collection started throwing an error stating  “ Sorry this site hasn’t been shared with you “ as shown in the image below .


Every time any user made an attempt to execute a search query on the search box in the SharePoint site , they got this annoying error stating the “ Sorry this site hasn’t been shared with you “ and it was the same for everyone .I tried  accessing  the Search center using the farm account and it still threw the same error . So in this article I’ll be taking about what this error is all about, what are the troubleshooting steps we did to fix and how we finally managed to fix it.

Initial troubleshooting steps performed to fix this issue:

Since this was on PROD and we had a lot of users who were impacted by this issue and hence we initially decided to create a new search center site collection under a different web application so that for the time being users can live with that .Meaning , we initially had the “SharePoint enterprise search center “ URL  configured and running under web application A and after we encountered this issue we removed that and created a new enterprise search center site collection under web application B so that we can figure out what’s wrong with the previous search center without having any business impact . The image below should help you understand what I’m talking about.


After making the change here, please go ahead and update the new search center URL in site settings as shown in the image below.


So after doing that we did the below mentioned steps in sequential manner as suggested in some forums to get rid of the issue….

  1. We thought of clearing IE cache: Open a new browser window –> Go to Internet options –>In the general tab, click the Delete button –>Make sure that passwords and temporary Internet files are selected. Try different browser such as Firefox! ( But doing this wouldn’t make sense in our scenario as the issue was only limited to one site collection in the entire farm .However , we tried this but it didn’t help )
  2. If you didn’t run product and configuration wizard after installation/patch, you may get this error even if you are a site collection administrator. Run it once and get rid of this issue. ( Even this was not quite convincing as the issue was just with one site collection( i.e. SharePoint enterprise search ) in the farm )
  3. Stop and Start “Microsoft SharePoint Foundation Web Application” service from Central Admin –>Application Management–> Manage services on server ( We did try this as well bearing the risk of losing all the sites for quite some time but even that didn’t help .For those who are not aware of what this steps does , it stops and recreates the SharePoint web application sites in IIS )
  4. If the SharePoint farm was migrated from SharePoint 2010, or backup-restore/import-exported: If your source site collection is in classic windows authentication mode and target is in claims authentication, you must change classic mode authentication to claims-based authentication. ( This was not applicable in our case as the sites were working perfectly fine for years after the migration )
  5. Try clearing the Distribution Cache. Do the IIS reset (We did this and it didn’t help either).

6. We also verified whether “NT Authority\Authenticated users” group has enough permissions on the search center and it was positive.

7. Of course we also checked the site collection administrators for the “SharePoint Enterprise Search site collection “and it was perfectly fine.

8. We also took a look at all the Search service application in SharePoint 2013 to verify the settings and they were pretty good.

Also, let me tell you that the issue this issue was reported to us the second time within a month .The first time it was with a different site collection on the same web application and this time it was on the SharePoint search center site collection that’s under the same web application. When it was reported the first time we just did an app pool recycle and also checked out and checked in the master page and that fixed it .But this time nothing was accessible in the Search center site collection.

So finally with no much steps left to do we decided to open a Sev A case with Microsoft and started working with them on this issue.

Listed below is what MS did to fix the issue:

  1. I shared the ULS logs as well as fiddler logs with the MS engineer by reproducing the error and after reviewing the logs he was able to identity that the “super user “ and “super reader “ account which takes care of object cache got corrupted in our environment which lead to this outage .

What’s the super user and super reader account?

The below mentioned link should give you a detailed explanation on the super user and super reader account. It’s very important that any SharePoint environment should have these accounts configured properly for optimal performance and it’s mostly utilized by sites which have the publishing feature enabled.

Ideally, the Portal Super User account must be an account that has Full Control access to the web application and the Portal Super Reader account must be an account that has Full Read access to the web application.

Also, you need to make sure that these accounts are discrete and they should never be used to login to the site and also it shouldn’t be used to to login to the SharePoint servers also as mentioned in the TechNet article that I highlighted above.


But in our scenario it’s exactly that part which was wrong .The “super user” and “super reader” account was the farm administrator service account and we often use that account for accessing the sites .This was configured mistakenly when the farm was initially configured and it eventually got corrupted which lead to this outage .However, we were not able to identify how it got corrupted all of a sudden and how it managed to run safely for all these years( might be one of those SharePoint mysteries ) . So we went ahead and changed that account and updated that for all the web applications in the farm using the below mentioned PowerShell command

$wa = Get-SPWebApplication -Identity “<WebApplication>”

$wa.Properties[“portalsuperuseraccount”] = “<SuperUser>”

$wa.Properties[“portalsuperreaderaccount”] = “<SuperReader>”


Lessons learned:

Please ensure that your SharePoint farm has the “super user” and “super reader” configured correctly for optimal performance and do check and ensure that they are discrete and those accounts are not being used to access SharePoint sites . If by any chance you’re facing this issue for a different site collection and not for SharePoint search the steps which I discussed above would still remain the same except for the “SharePoint search” part.

Also once you’re done reading this post, please ensure that you take a closer look at your web application properties and ensure that these accounts are configured correctly so that you don’t end up seeing surprises like me.Adding these accounts will also kick start a search full crawl .

Thanks for reading this post ….I hope this will help you fix this issue if you happen to come across this in your environment.












Microsoft Teams in Office 365


I hope everyone would agree to the fact that Office 365 has been one among the best products Microsoft has delivered till date and it’s good to see Microsoft adding a lot of new features and functionalities to the Office 365 suite every now and then. Today many organizations have started choosing Office 365 over on-premises Microsoft products as they’re easy to use and manage and in addition to that you get to remain up to date with all the latest updates.

  1. SharePoint provides intranets and content management solutions to more than 200,000 organizations and 190 million people.
  2. Yammer is the social network for work, enabling cross-company discussions for 85 percent of the Fortune 500.
  3. Skype for Business provides real-time voice, video and conferencing and hosts more than 100 million meetings a month.
  4. Office 365 Groups is our cross-application membership service that makes it easy for people to move naturally from one collaboration tool to another.

Today in this article, we will be discussing about “Microsoft Teams “, the new chat-based workspace in Office 365 that has built-in access to SharePoint Online, OneNote & Skype for Business Online. It was recently introduced by Microsoft couple of months back and acts as a hub for team chats, calls, meetings, and private messages.

Microsoft Teams mainly focuses on these four areas ….

  1. Chat for today’s teams
  2. A hub for teamwork
  3. Customizable for each team
  4. Security teams trust

Let’s look on all these areas and understand how Microsoft teams is built to support all these four areas that can enhance business as well as user experience.

  1. Chat for today’s teams:

It provides a modern conversation experience for today’s teams. Microsoft Teams supports not only persistent but also threaded chats to keep everyone engaged. Team conversations are, by default, visible to the entire team, but there is of course the ability for private discussions. Skype is deeply integrated, so teams can participate in voice and video conferences. You can also add emoji’s, stickers, GIFs and custom memes to make it their own.

  1. A hub for teamwork:

Microsoft Teams is built on Office 365 Groups and is backed by Microsoft Graph. So, it brings together the full breadth and depth of Office 365 to provide a true hub for teamwork. Word, Excel, PowerPoint, SharePoint, OneNote, Planner, Power BI and Delve are all built into Microsoft Teams so people have all the information and tools they need at their fingertips.

  1. Customizable for each team:

Since all teams are unique, Microsoft has invested deeply in ways for people to customize their workspace, with rich extensibility and open APIs available at general availability. For example, Tabs provides quick access to frequently used documents and cloud services. Microsoft Teams also shares the same Connector model as Exchange, providing notifications and updates from third-party services like Twitter or GitHub. In addition to that Microsoft has also included full support for the Microsoft Bot Framework to bring intelligent first- and third-party services into your team environment

  1. Security teams trust:

Microsoft Teams is designed in such a manner that it provides the advanced security and compliance capabilities that our Office 365 customers expect. Data is encrypted in transit and at rest. Like all other commercial services, Microsoft has implemented a transparent operational model with no standing access to customer data. Microsoft Teams will support key compliance standards including EU Model Clauses, ISO 27001, SOC 2, HIPAA and more. In addition to that, Microsoft Teams is served out of our hyper-scale global network of data centers, automatically provisioned within Office 365 and managed centrally, just as any other Office 365 service.

Availability of Microsoft Teams:

As of now Microsoft Teams is on preview mode and its general availability details can be found below.


Subscription details for Microsoft Teams:

If you have a personal Office 365 subscription, you won’t be able to access Microsoft Teams. To access the app, you need one of the following Office 365 license plans:

  1. Business Essentials
  2. Business Premium
  3. Enterprise E1, E3, or E5
  4. Enterprise E4 (for anyone who purchased this plan prior to its retirement)

Note: If you’re licensed for a suite plan like Office 365 Education or a non-suite plan like Skype for Business Online Plan 2, then you won’t be able to get the app. You need to change your license or purchase additional licenses for your company.

Alright, I guess we have now see enough about Microsoft teams. So, let’s see how to enable this in your Office 365 tenant so that your end users in your organization can start using this.

Note: I’ve chosen India in the county field while signing up for Office 365 and I’m able to see Microsoft teams in my tenant. If you’re not seeing that in your tenant it could be because you’re choosing a country where this feature is not available yet.

Turning on Microsoft teams in Office 365 tenant:

  1. Sign in to Office 365 with your work or school account.
  2. Go to the Office 365 admin center as shown in the image below and click on the app launcher. You can optionally click on “Admin” option as shown below.



3. Click on “Admin” as shown in the image below.


4. Navigate to Settings and click on “Services & add-ins” as shown below.


5. On the Services & add-ins home page, choose Microsoft Teams as shown in the image below.


6. On the Microsoft Teams settings page that opens, click or tap to switch the toggle to the on position to turn on Teams for your organization, and then choose Save.Once you’re done you will be redirected to the Microsoft teams home page as shown in the image below and this where you need to enable the features specific to Microsoft teams.


7. On the Microsoft Teams settings page, in the General section, you can choose if you want to show an organization chart in user profiles. By default, this setting is turned on. To change this setting, click or tap to switch the toggle next to Show organization chart in personal profile to Off or On, and then choose Save.


8. In the Teams & Channel section you can manage team owners and members by using the Groups control panel in the Office 365 admin center portal. At this time, you cannot create teams from the Groups control panel – teams must be created by using the Microsoft Teams desktop client or web app which we will be discussing later in his article.


9. In the Calls & Meetings section, you can choose if users can use video and screen sharing during calls and meetings as shown in the image below.


10. In the Messaging section, you can turn on or turn off media content such as animated images, memes, and stickers etc.


Note: To turn on or turn off animated images, click or tap the toggle switch next to Add fun animated images to the conversations, and then choose Save. When animated images are turned on, you can apply a content rating to restrict the type of animated images that can be displayed in conversations. You can set the Content Rating to be one of the following:

  1. Strict
  2. Moderate
  3. No restriction

To turn on or turn off custom memes, click or tap the toggle switch next to Add customizable images from the Internet, and then choose Save.

To turn on or turn off stickers, click or tap the toggle switch next to Add editable images to the conversations, and then choose Save.

  1. The Tabs section, let you customize a channel to include content and capabilities your team needs every day. They provide quick access to frequently used documents and cloud services. In the preview release, there are several built-in tabs such as Files and Notes. In the Microsoft Teams client, at the top of the channel, users can add tabs for Word documents, PowerPoint presentations, Excel spreadsheets, OneNote notebooks, Power BI reports, and plans from Planner.
  2. You can turn on Tabs as shown in the image below.


Please check the Tabs section in my “Microsoft teams” desktop client below.


13. Finally, you can enable Bots as shown in the image below


Note: Using Bots, Microsoft Teams users can complete tasks such as querying information and performing commands by using bots. Users can also integrate your existing LOB applications with Microsoft Teams by using a bot.

To prevent or allow side-loading of proprietary bots, click or tap to switch the toggle next to Enable side loading of external Bots, and then choose Save.

Finally, once all the features are enabled this is how the Microsoft teams home page will look like…



Point to Note:

Although the Office 365 Global administrator has turned on this feature in the tenant end users may not see the Microsoft Teams app tile in the app launcher after an admin turns on Microsoft Teams for an organization. Admins can direct end users to go to to get the desktop apps. To access the web client, users can go to For mobile apps, go to the relevant mobile store for Google Play, Apple App Store, and Microsoft Store.

Desktop client for Microsoft teams:

The below mentioned image depicts the desktop client for Microsoft teams using which I can create my team. You can do the same using web client as well.

Desktop client for Microsoft teams:

You need to sign in with your Office 365 credentials in the desktop client.


Web client for Microsoft teams:

You can check the web client below which opens on a browser and you can also notice that I’ve created my team in the image below.



Creating a team:

You need to use the Create Team on the bottom left of your screen as shown in the image below to create teams. In addition to you also have a “settings” option on the left corner which can help you turn on and off certain features.



Conversations in Microsoft Teams:

You can notice some conversations happening between the users in my team in the image below. You can mention a user, reply to a message and like a conversation or a reply.


In addition to that as mentioned earlier, you can add emoji’s to your conversations, attach files and also use the video camera icon to create new video meetings.

Adding a Tab:

Finally, you can add tabs using the “+” symbol as shown in the image below to add documents & One Note files to your conversations. You can notice that I’ve added a One Note file to my conversations in the image below



Microsoft teams is truly phenomenal and is a great way for users to communicate within themselves in a team . Please turn this on for your users so that they can enjoy this great application.

Thanks for reading this post …. Good luck with Microsoft teams in Office 365!!!

First Release in Office 365:


In this article, I’ll  will be discussing about “First Release in Office 365 “using which you can manage how your organization receive the regular updates from Microsoft for Office 365. Now, it’s a known fact that unlike on-premises the updates for Office 365 are pushed regularly and using this new feature in Office 365 you can designate that only certain individuals receive the updates first before it’s made generally available to everyone in the organization. By doing so you have ample amount of time to test these updates and check whether it breaks something (i.e. may be some custom functionalities) or you can remain on the default release schedule and receive the updates later.

So, to put it in simple words, ““First Release” update for Office 365 allows you to get access to updates faster than GA (General Availability) “.

Now, before we look on how to enable this feature in your Office 365 tenant, let’s take a look on the two type of release options.

  1. Standard Release
  2. First Release

Standard Release:

This is the default option where you and your users receive the latest updates when they’re released broadly to all Office 365 customers. This gives you extra time to prepare your support staff and users for upcoming changes. This is how Microsoft puts it:

“You and your users receive a select set of significant service updates 3 weeks or more after the official announcement. For at least 3 weeks, you have time to learn about the updates and prepare your employees.”

First Release:

With this option, you and your users can be the first to see the latest updates and help shape the product by providing early feedback. You can choose to have individuals or the entire organization receive updates early. This is how Microsoft puts it:

“You and your users receive a select set of significant service updates as early as one week after the official announcement. Choose this option if you and your employees are comfortable with regular updates to the Office 365 service.”

However, the default is to remain with “Standard Release”, which means that new functionality is released to your tenant when it’s good and ready.

The image depicted below gives a detailed explanation on the Office 365 release cycle:


So, as we’re done explaining what’s First release in Office 365, let’s look on how to enable that in your tenant. Remember, by default your tenant will be on “Standard Release “mode  and you need to enable “First Release “option.

Note: The Office 365 updates described in this article apply to Office 365, SharePoint Online, and Exchange Online. They do not apply to Skype for Business and related services.

Steps to activate First Release in your Office 365 Tenant:

  1. Sign in to Office 365 with your work or school account.
  2. Go to the Office 365 admin center as shown in the image below and click on the app launcher. You can optionally click on “Admin” option as shown below.


3. Click on “Admin” as shown in the image below.


4. Navigate to Settings and click on Organization profile as shown below.


5. Once you’re on the Organization profile page you will see the “Release preference “option as shown in the image below. Please click the “edit” button to the change the settings for Release preference.


6. You will notice 3 options as shown in the image below.


7. Choose the option that best suits your need, I’m choosing the third option as I want to enable First release option only for selected users.


8. On the next screen where it asks for a confirmation, please select Yes.


9. On the next screen, you will be asked to add people for First release as shown below.



10. Please select users from the list of available users as shown in the image below. I’m choosing myself here. You can also search for a user in the search box.


11. Once done you will see an option which says your release preference has been updated.


12. Once you click on close you can check & verify the list of users subscribed for first release. Here in this case you can see my name.


13. Finally, you can check the Organization profile home page to verify the release preference settings.


This confirms that you I have turned on “First preference “for myself alone. The best practice is to enable this for power users or IT administrators so that they can check the features before it’s made generally available for all end users. However, it’s up to you on how you want to manage this for your users .

Thanks for reading this post …. Good luck with Office 365!!!!


PowerShell script to configure SQL Server Reporting Services in SharePoint mode


The below mentioned script will take care of the steps listed below :

  1. Installs Reporting Services service and service proxy, and starts the service.2
  2. Creates a service proxy named “Reporting Services”.
  3. Creates a Reporting Services service application named “Reporting Services Application”.
  4. Enables the Power View feature for a site collection.


#Script for SSRS Configuration in SharePoint Integrated mode

write-host -foregroundcolor DarkGray StartTime>> $starttime

Write-Host -ForegroundColor Green “Import the SharePoint PowerShell snappin”
Add-PSSnapin Microsoft.Sharepoint.Powershell –EA 0

Write-Host -ForegroundColor Green “Install SSRS Service and Service Proxy, and start the service”
Write-Host -ForegroundColor Green “>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>”

Write-Host -ForegroundColor Green “Install the Reporting Services Shared Service”

Write-Host -ForegroundColor Green ” Install the Reporting Services Service Proxy”

# Get the ID of the RS Service Instance and start the service
Write-Host -ForegroundColor Green “Start the Reporting Services Service”
$RS = Get-SPServiceInstance | Where {$_.TypeName -eq “SQL Server Reporting Services Service”}
Start-SPServiceInstance -Identity $RS.Id.ToString()

# Wait for the Reporting Services Service to start…
$Status = Get-SPServiceInstance $RS.Id.ToString()
While ($Status.Status -ne “Online”)
Write-Host -ForegroundColor Green “SSRS Service Not Online…Current Status = ” $Status.Status
Start-Sleep -Seconds 2
$Status = Get-SPServiceInstance $RS.Id.ToString()

write-host -foregroundcolor DarkGray StartTime>> $starttime
write-host -foregroundcolor DarkGray $time

Write-Host -ForegroundColor Green “Create a new application pool and Reporting Services service application”
Write-Host -ForegroundColor Green “>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>”
Write-Host -ForegroundColor Green “Create a new application pool”
#!!!! update “-Account” with an existing Managed Service Account
New-SPServiceApplicationPool -Name “Reporting Services” -Account “<domain>\User name>”
$appPool = Get-SPServiceApplicationPool “Reporting Services”

Write-Host -ForegroundColor Green ” Create the Reporting Services Service Application”
#!!!! Update “-DatabaseServer”, an instance of the SQL Server database engine
$rsService = New-SPRSServiceApplication -Name “Reporting Services Application” -ApplicationPool $appPool -DatabaseName “Reporting_Services_Application” -DatabaseServer “<server name>”

Write-Host -ForegroundColor Green “Create the Reporting Services Service Application Proxy”
$rsServiceProxy = New-SPRSServiceApplicationProxy -Name “Reporting Services Application Proxy” -ServiceApplication $rsService

Write-Host -ForegroundColor Green “Associate service application proxy to default web site and grant web applications rights to SSRS application pool”
Write-Host -ForegroundColor Green “>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>”
# Associate the Reporting Services Service Applicatoin Proxy to the default web site…
Get-SPServiceApplicationProxyGroup -default | Add-SPServiceApplicationProxyGroupMember -Member $rsServiceProxy

write-host -foregroundcolor DarkGray StartTime>> $starttime
write-host -foregroundcolor DarkGray $time

Write-Host -ForegroundColor Green “Enable the PowerView and reportserver site features”
Write-Host -ForegroundColor Green “>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>”
#!!!! update “-url” of the site where you want the features enabled
Enable-SPfeature -identity “powerview” -Url http://server/sites/bi
Enable-SPfeature -identity “reportserver” -Url http://server/sites/bi

####To Verify, you can run the following:
#Get-SPServiceApplicationPool | where {$ -like “reporting*”}

List of build numbers required to upgrade to the next on-premises version of SharePoint:


I guess it’s very important to check and ensure that your existing environment is running a version of SharePoint that can be upgraded to the next version while you’re planning for a SharePoint upgrade.

So keeping that in mind, I’ve prepared a list of the build numbers for various SharePoint versions that should help in planning the upgrade.

  • To upgrade from SharePoint 2007 to 2010, your SharePoint 2007 farm should be on this build number–> ( i.e. SharePoint 2007 SP2, build number (12.0.6421.1000) )
  • To upgrade from SharePoint 2010 to 2013, your SharePoint 2010 farm should be on this build number–> ( SharePoint 2010 SP1, build number (14.0.6029.1000) )
  • To upgrade from SharePoint Server 2013 to 2016, your SharePoint 2013 farm should be on this build number–>( SharePoint Server 2013 SP1 + March 2013 PU, build number (15.0.4481.1005) )

 Note: Also, please ensure that you fix the errors in the current environment itself before you upgrade to the next version as the errors will not be fixed once you upgrade to the next version of SharePoint. An error in SharePoint is an error on all the versions and just upgrading it won’t fix it.

Upgrade Methods to the next on-premises version of SharePoint:

The tabular column below should help you in choosing the right upgrade method if you’re planning to move to the next on-premises version

tabular column.png

Thanks for reading this post .Happy SharePointing!!!







Recording of my Webinar Session on SharePoint 2016 Overview

webinar pic.PNG

For those who missed my session on SharePoint 2016 overview, please find the link to the video recording below.

Part 1-Webinar on SharePoint 2016 Overview

Part 2- Webinar on SharePoint 2016 Overview

Thanks once again for attending my session and will see you all soon on a different webinar shortly.

Happy SharePointing!!!

Webinar on SharePoint Server 2016.

Hi All,

Please join me for a webinar on Jan 21st at 6:30 pm IST on ” Overview of SharePoint Server 2016” .



  • SharePoint 2016 Overview & Focus areas
  • Software & Hardware Requirements to implement SharePoint Server 2016
  • What’s new & what’s deprecated?
  • Deep dive into MinRole,Feature packs and Zero Downtime Patching
  • Deployment Guidelines and Best practices for SharePoint Server 2016
  • Migration approach to SharePoint 2016
  • Recap & Conclusion

I’ll be discussing in detail Microsoft SharePoint Server 2016 and all it’s new features and functionalities.

Meeting details :

SharePoint Infrastructure Assessment Questionnaire for transitioning new customers

The questionnaire which I prepared below can be used to  assess the existing SharePoint environment for support transition and to collect key Information to propose the right support model for the transition.Folks who are working on transitioning new accounts/customers to your team can use this questionnaire to ease the transition phase.


1.Business Goal:

  1. What is the primary business objective of the SharePoint environment? (What needs of your business are met by the existing system – Communication, Collaboration, Knowledge Management, Enterprise Content Management, Document Management, Dashboards, Complete Intranet Solution, Extra-net for suppliers, customers etc.?)
  2. Please share the status of all ongoing and planned activities for SharePoint (Development, migration and upgrade)?
  3. SharePoint farm version (SP 2010, SP 2013, SP 2016 & Office 365)?
  4. Please enlist the sites that are most critical to business?
  5. Please list down all the mission critical services that are hosted in SharePoint and its purpose

2.Infrastructure details:

  1. Explain in detail about how the domain controller is configured and the primary and secondary data center details?
  2. Please provide details or preferably Physical and Logical Architecture Diagrams for Production, Staging and Development Environment (i.e. Farm Topology, deployment diagrams, Virtual environment, SharePoint version details, Directory Services)
  3. Server hardware & software specifications
  4. Total number of users? Number of concurrent users?
  5. Server Naming Convention for Prod/Dev/Test servers
  6. Licensing details for SharePoint, Office web apps, Office Online server, Windows server and other supporting platforms.
  7. Please enlist all Integration points (Interfaces) with External LOB and other applications/ Software (Ex: SAP Integration with SharePoint
  8. Please give a brief explanation about all Web Applications and service applications in scope.
  9. Please provide the list of all 3rd party software’s that has been integrated with SharePoint (Ex: Ninetex Workflow, Doc Ave & Boldon James etc.)
  10. Explain in detail about the load balancing methodology used for the SharePoint Environment ((ISA? TMG? CISCO Ace? Or any other Hardware load balancer, F5 Big IP?)
  11. Is there any redundancy for Service applications and if yes how are they configured
  12. Are there any service applications which are being shared between two farms?
  13. DR farm details and its configuration for Business Continuity. A separate DR farm on a different data-center or a stretched farm where the servers are distributed across two data centers?
  14. Backend SQL Server details (i.e. SQL Server version, what level of permissions do we (i.e. SharePoint admin) have on SQL, SQL alias, named instance for SharePoint etc. . .)
  15. Backup strategy for SharePoint content databases.
  16. RTO and RPO strategy for SharePoint content databases.
  17. High Availability strategy for SQL Server – Clustering in place? Mirroring? Always ON?
  18. Authentication mechanism for SharePoint.
  19. Known issues in the farm if any?
  20. Language pack details if installed?
  21. When the farm was recently patched?
  22. Repository for configuration files, Implementation/Build guides, Known error database (KEDB), Incident Logs, RCA (root cause analysis), (CSV, SVN, TFS, etc.
  23. Deployment architecture? Give an overview (Farm solutions or Sandbox solutions)
  24. Do you have Office web apps/Office Online server deployed? If yes, detailed explanation of the Office web apps farm.
  25. Do you have Workflow Manager deployed? If yes, detailed explanation about the Work flow manager farm.
  26. How often do you perform a data refresh to the UAT and TEST farm?
  27. Details about AV scanning for the SharePoint farm?
  28. Do we have any monitoring in place for monitoring the environment (Ex: SCOM, Zenoss monitoring tool)?
  29. Are you using IaaS platform for SharePoint, if yes details about that? (AWS, Azure & Google Cloud Platform) .VM machine types if the SharePoint environment is on Azure, A series, D series, G series etc.?
  30. Health check scripts if available and it’s frequency. How often does the health check script run and what are the parameter it monitors?

3.SharePoint Online (Office 365) details:

1.What’s the Office 365 plan that your users are using?

2. How are the user identities synced from on-premises AD to Azure AD?

3.Are you using any Hybrid functionalities (One drive for business, Hybrid Search, Hybrid user profile, Hybrid App launcher etc.)?

4.Detailed explanation about the customizations made on the SharePoint Online sites.

5.Documentation of all the customization made on the SharePoint Online sites.

6.Migration tools used to migrate to SharePoint Online from on-premises.

7.What level of permissions will the SharePoint Online tenant admin have on the Office 365 tenant? Just SharePoint administrator or Global administrator?

8. Who will take care of Office 365 license management?


1.Please explain in detail about the most critical sites (in scope) on existing environment?2.Please share the information architecture

3. Please share the governance plan for the SharePoint environment.

4. List of blocked and allowed file types in SharePoint?

5. Content management:

1.What’s the main kind of content that’s stored in SharePoint? (Text content, Documents, Images, flash, Audios, Videos, other formats etc.)

2.Is there any other Content Management or Document management tool in place along with SharePoint (Ex: Onbase from Hyland software)?


1.Are the SharePoint sites secured (Using SSL, encryption)?

2.Details about the SSL certificates used for SharePoint sites?

3.If the SharePoint sites are made available to internet/ external sharing what’s the authentication mechanism followed for that?

4.What is the current Authentication mechanism? (Windows Authentication, Forms based Authentication or Kerberos, AD, LDAP )

5.Authentication mode used for web applications (Claims or Classic)?

7. Customizations:

1.Does the SharePoint farm /SharePoint Online have customizations on it?

2.If yes, what’s the total number of farm solutions, User solutions & sandboxed solutions that’s been deployed?

3.Detailed description /documentation of all the WSP files that’s been deployed and its use?

4.If we have apps deployed to the app catalog, then detailed description about those apps?5. What kind of apps are they? Provider hosted, Auto –hosted or SharePoint hosted?

  • List of custom scripts running on the SharePoint servers and its purpose.
  • How Branding is applied, what’s being done? (Feature staplers/custom site definitions/Themes/Custom CSS, Master pages, etc.)
  • Do we have a SharePoint developer/developer team who takes care of all the development related tasks and if yes his/her details?

 8.Supporting Team details:

1.Who is supporting the existing environment? Please provide existing SLA and priorities for incident management.

2.Please give a brief description about team structure for Support (OS, Hardware, SQL server, Security, Exchange server, SharePoint, Cloud Management team)

3.Do you have a distributed development team across multiple locations/geographies? Please provide details.

4.Do you have a distributed team of site owners?

9.Vendor details:

1.Does this account have Microsoft premier support? If yes, whom to contact for opening a support case. Microsoft PFE and TAM contact details for this account if applicable?

2.Name of the Vendor who did all the SharePoint environment customizations.

3.Can we reach out to the Vendor for any customization issues which is not in our scope of support, if yes contact details of the Vendor?

4.Vendor details for the third party tools that’s used in the SharePoint farm (Ex: Metalogix, AvePoint, Share gate etc…)

5.SLA details with the Vendor and the contact person from the Vendor’s side for this account?

10.Support & Incident Management:

1.What is the Support Type (L1, L2 or L3) expected?

2.Please provide the call flow process. Find below a sample process flow.

3. What’s the frequency of L1, L2 and L3 tasks that you get in a day, in a week & in a month?

Call Flow Process / Diagram

call flow diagram.jpg

4.Who is expected to make calls to Microsoft for support and for other vendors?

5.Is it expected to interact with end users for Support?

6.What are the support hours (time zones) and SLAs expected? What support coverage are you looking? (24*7, 16*5, or 8*5 …)

Service Hours:

The below calendar defines the times that the SLA clock starts and stops excluding weekends.

Day Start  hours(EST) End hours(EST)

1.Do you have any system in place for Incident Management? If yes, please give details so that we can understand about how to accommodate that with our Incident Management system?

2.Please explain the Incident classification criteria. Find sample below.

  Definition Response Time from time of Incident Log Fix Time from time of Incident Log
P1 Impact on All Users /Risk to Business Continuity 10 mins Stay with it
P1 Impact on All Users /Secondary system down    
P2 Impact on Site or Dept. / Significant problem preventing satisfactory operation    
P3 Impact on single User    
P4 Service Request/Advice required    
P4 Service Request/Planning    
P4 New starters/requisitions/supplies/bookings    

3.What is the mode of communication for Support (Email only, Incident management tool, Phone, chat)?

4.Please share the SLAs/ OLAs with existing vendors for 3rdparty software, Infrastructure, Exchange Server, Security, SQL Server, OS and hardware.

5.It is assumed that content and configuration DB of all SharePoint sites are in scope for support. Please confirm?

6.Please confirm if following is out of scope for SharePoint Support

1.OS level support like Server Performance Management, Memory Management, Disk Space and SQL Server Uptime.

2.Installation, Implementation, Deployment of any Software

7.Design, Development, Implementation or any issue on Development and Test servers.

8.Evaluation of any Software, Tool and Processes and Results

9.Design, Development and Implementation of Proof of Concepts

10.Development and Enhancements of 3rd Party Products

11.Platform Troubleshooting

12.Application Migration & Upgrades

13.Optimizing search for website or any other design changes to website

14.Managing Office 365 licenses and supporting the Azure environment.

7.Are there any development or migration projects that are currently in progress? What support is given to these projects by existing (Portal, or SharePoint) support teams?

8.Is there any repository for knowledge documents, Incident Logs, RCA (Root cause Analysis)?

9.Communication plan for any planned/unplanned outages – Key stakeholder list

9.Escalation matrix details.

10.Detailed description of tasks & activities performed in shift / daily / weekly / monthly

11.Please provide us with the following Support statistics (priority wise)

  1. Total tickets logged for SharePoint in last 1 month, 3 month and 6 months.
  2. How many Priority 1 calls were logged in last 1 month, 3 month and 6 months?
  3. Details about past SLA adherence,
  4. Summary of support tickets with case open age

 12.Are there user training requirements for educating the users about the sites? Need for webinars, training material, FAQs etc. to facilitate the rollout and ongoing changes to the sites

13. Any past record of the entire SharePoint environment going down, if yes details about that?

Finally, once all the above mentioned details are gathered and you have understood the customer’s environment well then you’re good to close the transition phase .

Happy SharePointing !!!










Resetting Search Index in SharePoint 2013:


Search is indeed a mission critical service application in SharePoint and it’s very important that it remains healthy so that you get the results in the Search center whenever you execute a search query. However, it’s quite possible that you may notice some errors in the “Crawl log” stating that the crawler is not able to crawl the contents in the content source and at times it might get even worse such that you may notice all “failures” and no “success” in the crawl logs. In scenarios like that you might have to reset the search index so that the content in the index gets flushed away after which you need to perform a full crawl so that search index component receives the newly processed items from the content processing component and writes them to the search index. Of course, directly resetting the index is not a fix for any search related issue, please ensure that you do all the necessary troubleshooting steps from your end to identify and fix the issue and once you reach a point where nothing really helped, that’s when you should think about resetting the search index.

What happens when you reset the Search Index?

When you reset the search index, all the contents will be immediately removed from the search index and users will not be able to retrieve search results when they execute a search query on the search center.  Once you’re done resetting the search index, you must perform a full crawl on one or more content sources to create a new search index. Users will be able to retrieve search results again once the full crawl is finished and the new search index is created. So in a nutshell there will be a downtime when the search index is getting reset. After a search index reset, the full crawl won’t restore all the analytics features that are powered by the Analytics Processing Component. All the analytics results will be erased after resetting the search index.

When we should reset the search index?

As I already mentioned above, resetting the search index should be the final step of troubleshooting for any search related issue. However, based on my experience this when we should reset the search index ….

  1. Index is corrupted
  2. One or all index component status is degraded
  3. You crawl completed successfully but you are not getting the search results.
  4. When you move the index location
  5. When Index location run out of space.
  6. In a scenario where we have Index partitions spread across multiple servers and the indexed document count is out of sync. For example, we have 2 servers set as index partitions, server 1 has 150K indexed documents and server2 has 145k index documents
  7. If we make any changes to search topology such as removing the search components ,adding the components & activating a different search topology

 Alright, now let’s take a look at the steps to reset the search index …


Please ensure that you take care of the below mentioned pre-requisites before resetting the search index .Failing to do so will cause adverse effects and at worst case you may end up recreating the entire search service application.

  1. Make sure the crawl status for each content source is “Idle”. If any crawl is running, wait for the crawl to complete or follow the steps to “Stop the active crawls” below.
  2. Make sure continuous crawl for content sources is disabled [if applicable].This step is only specific to SharePoint 2013 and above.
  3. Make sure the crawl rate is 0
  4. Make sure background activity status is “None” on search administration page.

Stopping the Active Crawl(s):

  1. Navigate to search administration page.
  2. Click on Content Sources link towards your left hand side as shown in the image below.


3. If any content source is crawling, click on the drop down of the content source and click on “Stop Crawl”.

Disable Continuous Crawl:

  1. Navigate to search administration page.
  2. Navigate to Content Sources link appearing on quick launch.


3. Click on the drop down and select “Disable Continuous Crawl” to disable it.


4. Click “Ok” when below warning message appears.


5. Follow the same steps to disable continuous crawl for other content sources. Finally, all the content sources would show “Idle” status as shown in the image below.


Suspend Search Service Application:

This step is to ensure that there is no crawling activity in place while we perform the Index reset.

  1. Open SharePoint Management Shell using service account
  2. Run the below command.

Suspend-SPEnterpriseSearchServiceApplication “Search Service Application Name”

Note: If you don’t know the name of search service application, you can get it by running below command before executing the above command.

Get-SPServiceApplication | Where-Object {$_.TypeName –eq “Search Service Application”}

After suspending the search application, search administration page will show the status as “Paused for: External request” as shown in the image below.


 Ensure Crawl Rate is 0:

  1. Navigate to search administration page.
  2. Check the Recent Crawl rate.


Ensure Crawler Background Activity is none:

  1. Navigate to search administration page.
  2. Check the status of the Crawler background activity and ensure it shows as “none” as shown in the image below.


Once the necessary pre-requisites are taken care, please follow the below steps to perform an Index Reset.

There are 2 ways to perform Index reset.

Using UI [User Interface]: This method can be used when the indexed content in your farm is not much in size i.e. index size is not huge and also when you don’t have large content sources.

Using PowerShell: UI method is not recommended for SharePoint farms with large search index. [i.e. huge count of searchable/indexed documents]. Using the UI method in large farms for resetting the search index can result in time out error. In such cases, we need to use PowerShell method to reset the index.


  1. Navigate to SharePoint Central Administration.
  2. Under “Application Management” category, click on “Manage Service Applications”.
  3. Find out “Search Service Application” and click on the Search service application.
  4. In the quick launch, click on “Index Reset


5. Click on confirm once done .


  1. Login to the SharePoint server using Administrator credentials.
  2. Open “SharePoint management shell” with elevated permissions.
  3. Run the below command to reset search index.


Post Index Reset Steps:

  1. Check whether the number of searchable items is 0.
  2. Resume the search service application by running the command shown in the screenshot below.

133. Enable “continuous crawl” for the content sources if it was enabled prior to index reset.

4. Run full crawl for the content sources one by one.

This confirms that you’re done resetting the Search index successfully and please keep monitoring the full crawl and ensure that it doesn’t get stuck in the middle. The time duration for the full crawl depends on the size of the content source, if you have very large content sources then it might take days for the full crawl to complete successfully. Once done, please verify the search results and ensure that they return fine. Also check the “Crawl log” and make sure you’re not seeing any errors this time.

Thanks for reading this post …..Happy SharePointing!!!

PowerShell script for generating the site collections list with multiple administrators


Running this script will generate a report which displays the list of site collections that has multiple site collection administrators and will also display the total number of users who have access to those site collections.

Add-PSSnapin microsoft.sharepoint.powershell -ErrorAction SilentlyContinue

Add-Content “Sites.csv” -Value “SiteCollection Name,SiteCollection URL, SiteCollection Administrators, Users Count,Usage in MB”

$webApp = Get-SPWebApplication

foreach($webapps in $webapp)


foreach ($SiteCollection in $webApps.Sites)


$url = $SiteCollection.Url

$webs = Get-SPWeb $URL

[boolean] $WriteToFile = $true

$weburl = $SiteCollection.OpenWeb()

$siteowner = “”

foreach ($siteAdmin in $weburl.SiteAdministrators)


$siteowner = $siteAdmin.DisplayName + “|” + $siteowner


foreach($web in $webs)


#Grab all users in the site collections

$siteUserCnt = $web.AllUsers.Count

$Siteurl = $web.Url

$siteTitle = $web.Title

$site = Get-SPSite  $Siteurl

$siteusage = $site.Usage.Storage/1MB

Add-Content -Path “Sites.csv” -Value “$siteTitle,$Siteurl,$siteowner,$siteUserCnt,$siteusage”





Thanks for using this script …..Happy SharePointing!!!!