Is it possible to expand a property in a hash table and pass that to a PSObject?
I’m looking to expand the MemberOf property in an AD Audit report (see bottom example).
get-aduser grant.harrington -Properties * | select @{n='memberof';e={$_.memberof -join '; '}} | ft -Wrap
get-aduser grant.harrington -Properties * | select -ExpandProperty MemberOf
$GetUser = Get-ADUser -SearchBase $MyOU -filter $varName -Properties * #-Credential $DomainCredential
foreach ($GU in $GetUser)
{
$ObjAccountReviewResults =[ordered]@{
"Full Name"=$GU.CN
"First Name"=$GU.GivenName
"Initials"=$GU.Initials
"Last Name"=$GU.Surname
"Display Name"=$GU.DisplayName
"Description"=$GU.Description
"Office"=$GU.Office
"Office Phone"=$GU.OfficePhone
"E-Mail Address"=$GU.EmailAddress
"REE Web Page"=$GU.wWWHomePage
"Login Name"=$GU.UserPrincipalName
"SamAccountName"=$GU.SamAccountName
"Password Never Expires Setting: " = $GU.PasswordNeverExpires
"Home Drive Letter"=$GU.HomeDrive
"Home Directory"=$GU.HomeDirectory
"Information"=$GU.info
"Title"=$GU.Title
"Department (RU)"=$GU.Department
"Manager (Supervisor)"=$GU.Manager
"Member Of"=$GU.MemberOf
"Member Of2" = -ExpandProperty $GU.MemberOf
"Member Of3" = "@{n='$GU.memberof';e={$GU.memberof -join '; '}}"
"Distinguished Name" = $GU.DistinguishedName
"Account enabled (T/F)"=$GU.Enabled
"Created"=$GU.Created
"Last Login"=$GU.LastLogonDate
"PasswordLastSet"=$GU.PasswordLastSet
"Last Bad Password Attempt"=$GU.LastBadPasswordAttempt
"Security ID"=$GU.SID
"CustomAttribute"=$GU.extensionAttribute1
} #end ObjAccountReviewResults
$ObjAccountReview = New-Object -TypeName PSObject -Property $ObjAccountReviewResults
Write-Output $ObjAccountReview