#SharePoint 2013 #PowerShell: How to get user permissions report

function Get-SPPermissionsReport($web, $recursive) { $web | Get-SPUser | % { New-Object PSObject -Property @{ UserLogin = $_.UserLogin ‘Roles given explicitly’ = $_.Roles ‘Roles given via groups’ = $_.Groups | %{$_.Roles} Groups = $_.Groups Url = $web.Url } } if($recursive) { $web.Webs | % { Get-SPPermissionsReport $_ $recursive } } } $web = Get-SPWeb http://yoursharepoint/sites/department Get-SPPermissionsReportContinue reading “#SharePoint 2013 #PowerShell: How to get user permissions report”

PowerShell; SharePoint 2010: Set Alternate Access Mapping

I need to set Alternate Access Mapping remotely as part of my automation. I can’t find how to specify PowerShell version for Invoke-Command CMDlet. So I decided to use this workaround: Invoke-Command -computer sp2010.vlasenko.org -script { $command = “Add-PSSnapin Microsoft.SharePoint.PowerShell; New-SPAlternateURL ‘http://vlasenko.nmsp.org’ -Zone ‘Internet’ -WebApplication ‘SharePoint – 80′” PowerShell -v 2 -Command “& { $commandContinue reading “PowerShell; SharePoint 2010: Set Alternate Access Mapping”

Bind SharePoint event receiver by PowerShell

$list = (get-spweb http://sharepoint/sites/test).lists[‘somelist’] $def = $list.EventReceivers.Add() $def.Assembly = “MyReceiverAssembly, Version=, Culture=Neutral,PublicKeyToken=a00000000a000ce0” $def.Class = “MyReceiverAssembly.MyReceiverClass” $def.Type = [Microsoft.SharePoint.SPEventReceiverType]::ItemAdded $def.Name = “My ItemAdded Event Receiver”; $def.Synchronization = [Microsoft.SharePoint.SPEventReceiverSynchronization]::Synchronous $def.Update()

#PowerShell #SCOM Preserve/Update Created By/Modified By

This example shows how to use SharePoint Client Object API through PowerShell to create a list item with specific Author and Editor. Useful if you want to preserve identities while moving the SharePoint items. $siteUrl = “http://mysite&#8221; $listTitle = “My List” $user = “9;#domain\user” cd “$installFolder” Add-Type -Path .<PATH>\Microsoft.SharePoint.Client.dll $ctx = new-object Microsoft.SharePoint.Client.ClientContext($siteUrl) $web =Continue reading “#PowerShell #SCOM Preserve/Update Created By/Modified By”

SharePoint 2013 on Windows Azure VM five times more expensive than on AWS instance

Something wrong with Windows Azure! I decided to run a SharePoint 2013 on Windows Azure. Just to give Azure a chance;) But! What is going on there? Does someone really use it? SharePoint 2013 requires minimum 8GB of RAM. AWS $0.066 Azure $0.32

Howto: SharePoint Items Stats

Get-SPSite | % {$_.AllWebs} | % {$_.Lists} | measure-object -property ItemCount -sum -minimum -maximum -average Count – number of Lists in the SharePoint farm Sum – number of Items in the SharePoint farm Maximum – number of Items the biggest List has Average – Items per List (average)

Display SharePoint Site collection Administrators

This script displays all Site collection Administrators along with their email addresses for all web applications. Get-SPSite | % {$_.RootWeb.SiteAdministrators} | select @{name=’Url’;expr={$_.ParentWeb.Url}}, LoginName, Email If you are on WSS v.3/MOSS 2007 use the next defenition for Get-SPSite [System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”) | Out-Null function Get-SPSite{ $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local $farm.services | % {if($_.WebApplications.Count){$_.WebApplications}} | % {if($_.sites.Count){$_.sites}} }

Howto: Display all SharePoint items created today

Get-SPSite | % {$_.AllWebs} | % {$_.Lists} | % {$_.Items} | ? {$_[“Created”].Date -eq [System.DateTime]::ToDay} | % {“$($_.Web.Url)/$($_.Url)”} If you are on WSS v.3/MOSS 2007 use the next defenition for Get-SPSite [System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”) | Out-Null function Get-SPSite{ $farm = [Microsoft.SharePoint.Administration.SPFarm]::Local $farm.services | % {if($_.WebApplications.Count){$_.WebApplications}} | % {if($_.sites.Count){$_.sites}} }

SPN checklist for Kerberos authentication with IIS 7.0/7.5

This post is more about the confusion that may arise around SPNs for setting up Kerberos authentication in IIS 7.0. IIS 7.0 has a new Kernel-mode authentication feature using which the ticket for the requested service is decrypted using Machine account (Local system) of the IIS server. It no longer depends upon the application poolContinue reading “SPN checklist for Kerberos authentication with IIS 7.0/7.5”