Files
management-scripts/Get-MemberOf.ps1
T

34 lines
1.9 KiB
PowerShell
Raw Normal View History

2019-11-11 19:22:39 -05:00
Function MemberOf() {
param(
[Parameter(Mandatory=$false)]
[switch]$Builtin=$false,
[Parameter(Mandatory=$true)]
[string]$Group
)
If ( $Builtin ) {
Switch ( $Group ) {
("Administrator" -or "Administrators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::Administrator; break }
("Backup Operator" -or "Backup Operators" -or "BackupOperator" -or "BackupOperators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::BackupOperator; break }
("System Operator" -or "System Operators" -or "SystemOperator" -or "SystemOperators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::SystemOperator; break }
("Account Operator" -or "Account Operators" -or "AccountOperator" -or "AccountOperators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::AccountOperator; break }
("Print Operator" -or "Print Operators" -or "PrintOperator" -or "PrintOperators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::PrintOperator; break }
("Replicator" -or "Replicators")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::Replicator; break }
("Power User" -or "Power Users" -or "PowerUser" -or "PowerUsers")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::PowerUser; break }
("User" -or "Users")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::User; break }
("Guest" -or "Guests")
{ $Group = [System.Security.Principal.WindowsBuiltInRole]::Guest; break }
default {;break}
}
}
([Security.Principal.WindowsPrincipal][System.Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole($Group)
}
MemberOf -Group "administrators"