{"id":723,"date":"2017-03-01T13:52:29","date_gmt":"2017-03-01T11:52:29","guid":{"rendered":"http:\/\/blog.langlitz-it.de\/?p=723"},"modified":"2018-05-28T12:58:24","modified_gmt":"2018-05-28T10:58:24","slug":"powershell-get-aduser-get-adgroup-get-adobject-benutzer-gruppen-und-kontakte-suchen","status":"publish","type":"post","link":"https:\/\/www.langlitz-it.de\/?p=723","title":{"rendered":"PowerShell &#8211; Get-ADUser, Get-ADGroup, Get-ADObject &#8211; Benutzer, Gruppen und Objekte suchen"},"content":{"rendered":"<h3>Get-ADUser<\/h3>\n<p>Mit dem <em>CmdLet Get-ADUser<\/em> k\u00f6nnen Sie diverse User Informationen abfragen. Um z.B. alle User einer <em>OU<\/em> mit Vornamen und Nachnamen zu erhalten, verwenden sie folgende Option:<\/p>\n<p><em>Get-ADUser -filter * -Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221; |select surname,givenname<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Der Parameter <em>-properties *<\/em> zeigt alle Eigenschaften des Users, bzw. des Objektes. Damit k\u00f6nnen Sie z.B. den Lastlogon eines Users erhalten:<\/p>\n<p>Get-ADUser Username -Properties * |Select LastLogon*<\/p>\n<p>&nbsp;<\/p>\n<p>Ein neues Passwort setzen Sie als Securestring:<\/p>\n<p>$Passwort = Read-Host -AsSecureString<\/p>\n<p>************<\/p>\n<p>Get-ADUser Username |Set-ADAccountPasswort -NewPassword $Password -Reset<\/p>\n<p>&nbsp;<\/p>\n<p>Sie k\u00f6nnen nat\u00fcrlich die Filterfunktion weiter granulieren. Im folgenden Beispiel erhalten Sie alle gesperrten User einer <em>OU<\/em>:<\/p>\n<p><em>Get-ADUser -filter {enabled -eq &#8220;False&#8221;} -Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221; |select surname,givenname<\/em><\/p>\n<p>Wenn Sie wissen m\u00f6chten, in welchen Gruppen der User Mitglied ist, dann Fragen sie die <em>ADPrincipalGroupMembership<\/em> ab<\/p>\n<p><em>Get-ADuser -Filter {displayname -like &#8220;*Langlitz*&#8221;} -Properties * |Get-ADPrincipalGroupM<\/em><em>embership<\/em><\/p>\n<h3>Get-ADGroup<\/h3>\n<p>Gleiches gilt nat\u00fcrlich auch f\u00fcr Gruppen. Daf\u00fcr verwenden Sie allerdings das CmdLet Get-ADGroups:<\/p>\n<p><em>Get-ADGroup -filter * -Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221;<\/em><\/p>\n<p>&nbsp;<\/p>\n<h3>Get-ADObject<\/h3>\n<p>Um z.B. Kontakte finden zu k\u00f6nnen, w\u00e4hlen Sie Get-ADObject:<\/p>\n<p><em>Get-ADobject -filter {objectclass -eq &#8220;contact&#8221;}\u00a0-Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221;<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Sie k\u00f6nnen aber z.B. auch alle Objekte einer OU suchen:<\/p>\n<p><em>Get-ADobject -filter {(objectclass -eq &#8220;contact&#8221;) -or (objectclass -eq &#8220;user&#8221;) -or (objectclass -eq &#8220;group&#8221;)}\u00a0-Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221;<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Wenn Sie nun alle User und Kontakte einer OU suchen, die den Namen Marco in einer Mailadresse haben, verwenden Sie folgendes:<\/p>\n<p>Get-ADobject -filter {(objectclass -eq &#8220;user&#8221; -and proxyaddresses -like &#8220;*marco*&#8221;) -or (objectclass -eq &#8220;contact&#8221; -and proxyaddresses -like\u00a0&#8220;*marco*&#8221;)}\u00a0<em>-Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221;<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>Zum Abschluss noch ein kleines Script, mit dem Sie aus einer Liste von Usern den zugeh\u00f6rigen DisplayName, das LastLogonDate und die PrimaryMailAddress bekommen. Die Liste der User ist eine Liste mit SamAccountName.<\/p>\n<p>$list = &#8220;User1&#8243;,&#8221;User2&#8243;,&#8221;User3&#8243;,&#8221;User4&#8243;,&#8221;User5&#8221;<\/p>\n<p>$result = @()<br \/>\n$user = &#8220;&#8221;<\/p>\n<p>$user = $list | % {get-aduser -Properties * -Filter {SamAccountName -like $_}}<\/p>\n<p>$user |% {<br \/>\n$details = &#8220;&#8221; | select DisplayName,LastLogon,PrimaryeMail<br \/>\n$details.DisplayName = $_.DisplayName<br \/>\n$details.Lastlogon = $_.lastlogondate.toshortdatestring()<br \/>\n$details.primaryemail = ((get-mailbox $_.samaccountname -ea si).emailaddresses | ? {$_.isprimaryaddress -match &#8220;True&#8221;}).smtpaddress<br \/>\n$result+=$details<br \/>\n}<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Get-ADUser Mit dem CmdLet Get-ADUser k\u00f6nnen Sie diverse User Informationen abfragen. Um z.B. alle User einer OU mit Vornamen und Nachnamen zu erhalten, verwenden sie folgende Option: Get-ADUser -filter * -Searchbase &#8220;OU=OUName,DC=Domain,DC=xx&#8221; |select surname,givenname &nbsp; Der Parameter -properties * zeigt &hellip; <a href=\"https:\/\/www.langlitz-it.de\/?p=723\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[295,299,294,145,293,297,296,298,635,634,672,195],"_links":{"self":[{"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/posts\/723"}],"collection":[{"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=723"}],"version-history":[{"count":20,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/posts\/723\/revisions"}],"predecessor-version":[{"id":2245,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=\/wp\/v2\/posts\/723\/revisions\/2245"}],"wp:attachment":[{"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=723"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=723"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.langlitz-it.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}