77 lines
2.0 KiB
PowerShell
77 lines
2.0 KiB
PowerShell
param(
|
|
[Parameter(Mandatory=$true)]
|
|
[string]$url
|
|
)
|
|
|
|
function Write-Log($msg)
|
|
{
|
|
Write-Host $msg -foregroundcolor green
|
|
($msg) | Out-File "log-enum-users-restore.txt" -Append
|
|
}
|
|
|
|
function Enum-Users-Group($group, $arr)
|
|
{
|
|
foreach ($user in $group.Users)
|
|
{
|
|
$arr.Add($user.LoginName) > $null
|
|
}
|
|
}
|
|
|
|
function Enum-Users-Web($web)
|
|
{
|
|
Write-Log ($web.Url)
|
|
|
|
$groupAsukkaat = New-Object System.Collections.ArrayList
|
|
$groupOsakkaat = New-Object System.Collections.ArrayList
|
|
$groupHallitus = New-Object System.Collections.ArrayList
|
|
$groupRekAsukkaat = New-Object System.Collections.ArrayList
|
|
$groupRekOsakkaat = New-Object System.Collections.ArrayList
|
|
foreach ($g in $web.Groups)
|
|
{
|
|
if ($g.Name.EndsWith("- Asukkaat"))
|
|
{
|
|
Enum-Users-Group $g $groupAsukkaat
|
|
}
|
|
elseif ($g.Name.EndsWith("- Osakkaat"))
|
|
{
|
|
Enum-Users-Group $g $groupOsakkaat
|
|
}
|
|
elseif ($g.Name.EndsWith("- Hallitus"))
|
|
{
|
|
Enum-Users-Group $g $groupHallitus
|
|
}
|
|
elseif ($g.Name.EndsWith("- Rekisteröityneet asukkaat"))
|
|
{
|
|
Enum-Users-Group $g $groupRekAsukkaat
|
|
}
|
|
elseif ($g.Name.EndsWith("- Rekisteröityneet osakkaat"))
|
|
{
|
|
Enum-Users-Group $g $groupRekOsakkaat
|
|
}
|
|
}
|
|
|
|
Write-Log ([System.String]::Join(";", $groupAsukkaat.ToArray()))
|
|
Write-Log ([System.String]::Join(";", $groupOsakkaat.ToArray()))
|
|
Write-Log ([System.String]::Join(";", $groupHallitus.ToArray()))
|
|
Write-Log ([System.String]::Join(";", $groupRekAsukkaat.ToArray()))
|
|
Write-Log ([System.String]::Join(";", $groupRekOsakkaat.ToArray()))
|
|
}
|
|
|
|
function Enum-Users-Site-Col($site)
|
|
{
|
|
#Write-Log $site.Url
|
|
foreach ($w in $site.RootWeb.Webs)
|
|
{
|
|
Enum-Users-Web $w
|
|
}
|
|
}
|
|
|
|
$wa = Get-SPWebApplication $url
|
|
foreach ($site in $wa.Sites)
|
|
{
|
|
Enum-Users-Site-Col $site
|
|
}
|
|
#$site = Get-SPSite $url
|
|
#Enum-Users-Site-Col $site
|
|
#$web = Get-SPWeb $url
|
|
#Enum-Users-Web $web |