34 lines
1.9 KiB
PowerShell
34 lines
1.9 KiB
PowerShell
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"
|