I just had to generate a report to find SharePoint site collection administrators see who are all assigned with Site collection administrator rights on various site collection in entire SharePoint Farm.
Sure, Lets use PowerShell in SharePoint to get site collection administrator programmatically. This script iterates through all site collections in all web applications to list site collection administrators.
PowerShell Script to Get All Site Collection Administrators (I've made it compatible with SharePoint 2007)
Sure, Lets use PowerShell in SharePoint to get site collection administrator programmatically. This script iterates through all site collections in all web applications to list site collection administrators.
PowerShell Script to Get All Site Collection Administrators (I've made it compatible with SharePoint 2007)
[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint") #Get the Farm $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local #Get All Web Applications $farmWebServices = $farm.Services | where -FilterScript {$_.GetType() -eq [Microsoft.SharePoint.Administration.SPWebService]} foreach ($farmWebService in $farmWebServices) { #Loop through Each web applicatoin foreach ($webApplication in $farmWebService.WebApplications) { #Loop through each site collection foreach ($site in $webApplication.Sites) { $Admins="" #Get all Site Collection Administrators foreach ($siteCollAdmin in $site.RootWeb.SiteAdministrators) { $Admins+= $siteCollAdmin.LoginName +";" } Write-Host "Site URL: " $site.RootWeb.Url " - Site Collection Admins: " $Admins "`n" $site.Dispose() } } }By the way, It works on SharePoint 2010 and SharePoint 2013 as well.