public/Test-tADisGroupMember.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
function Test-tADisGroupMember{
<#
.SYNOPSIS
  Test if AD Object is member of group.
 
.DESCRIPTION
  Test if AD Object is member of group.
 
.PARAMETER Identity
  Identity of AD Object.
 
.PARAMETER Group
  Specify the Group.
 
.EXAMPLE
  Test-tADisGroupMember User1 Group1
  Test if user1 member of group1
 
.EXAMPLE
  Test-tADisGroupMember -Indetity Group1 -Group Group2
  Test if group1 member of group2
#>

  [CmdletBinding()]
  Param(
    [Parameter(Mandatory=$true,Position=0)]
    [string]$Identity,

    [Parameter(Mandatory=$true,Position=1)]
    [string]$Group
  )

  begin {
    Write-Verbose -Message ('Identity: {0}' -f $Identity)
    Write-Verbose -Message ('Group: {0}' -f $Group)
  }

  process {
    $a = Get-ADPrincipalGroupMembership -Identity $Identity | Where-Object {$_.Name -eq $Group}

    if(!$a){
      [bool]$Result = $false
    } else {
      [bool]$Result = $true
    }
  }

  end {
    return $Result
  }

}