[玩转系统] 在 Active Directory 中使用 Get-ADObject Powershell Cmdlet
作者:精品下载站 日期:2024-12-14 05:59:08 浏览:15 分类:玩电脑
在 Active Directory 中使用 Get-ADObject Powershell Cmdlet
介绍
Get-ADUser PowerShell cmdlet 提供了一种从 Active Directory 检索用户信息的简单方法。例如,您可以快速获取所有即将过期或已经过期的 AD 帐户的列表。
本文提供了此 cmdlet 的语法,然后深入介绍了三个最常用的参数。
获取 ADObject:描述
Get-ADObject cmdlet 连接到 AD 域控制器或轻量级目录服务 (LDS) 服务器并检索有关一个或多个 Active Directory 对象的数据:
- 检索单个对象 - 要检索有关特定 AD 对象的信息,您可以使用 Identity 参数指定该对象,使用管道将对象提供给 Identity 参数,或者将 Identity 参数分配给AD 对象变量。
- 检索多个对象 - 要检索多个对象,您可以使用 Filter 参数指定查询字符串,或者如果您的查询字符串已存在,则使用 LDAPFilter 参数。
Get-ADObject:语法
Get-ADObject cmdlet 的语法如下:
New-ADObject [-Name] <string> [-Type] <string> [-WhatIf] [-Confirm] [-AuthType <ADAuthType>] [-Credential <pscredential>] [-Description <string>] [-DisplayName <string>] [-Instance <ADObject>] [-OtherAttributes <hashtable>] [-PassThru] [-Path <string>] [-ProtectedFromAccidentalDeletion <bool>] [-Server <string>] [<CommonParameters>]
以下是使用三个参数的 Get-ADObject cmdlet 语法示例:
Get-ADObject -LDAPFilter "(objectClass=site)" -SearchBase 'CN=Configuration,DC=Fabrikam,DC=Com' -Properties CanonicalName | FT Name,CanonicalName
获取 ADObject:参数
以下是一些需要了解的关键参数。
前 3 个参数
Get-ADObject cmdlet 的三个最常用参数是:
- -Identity:使用唯一标识符(例如其专有名称、SID 或 GUID)指定要检索的特定对象
- -Filter:用于指定 PowerShell 表达式语言中的查询以选择 AD 对象
- -LDAPFilter:用于指定用于选择 AD 对象的 LDAP 查询字符串
以下部分更详细地探讨这三个参数。
其他有用的参数
其他有用的参数包括:
- -AuthType:用于分配身份验证方法(基本或协商)
- -Credential:用于提供执行 cmdlet 的备用凭据
- -IncludeDeletedObjects:用于在结果中包含已删除的对象和停用的链接
- -Properties:指定除了默认属性之外还应从服务器返回的任何对象属性(要获取 AD 对象的默认属性集列表,请使用以下命令:Get- ADObject| 获取成员)
- -分区:将搜索限制为指定的 Active Directory 分区
- -ResultPageSize:定义每个页面上显示的对象数量
- -ResultSetSize:指定要返回的最大对象数(默认为 1,000)
- -SearchBase:指定要搜索的 Active Directory 路径 (OU)
- -SearchScope:定义要搜索的 OU 的子级别数:(Base 或 0、OneLevel 或 1、Subtree 或 2)
- -服务器:指定从中获取结果的 AD DS 实例。值可以是服务器的完全限定域名或 NetBIOS 名称。您还可以将端口与 FQDN 一起使用。
使用身份参数
Identity 参数用于获取 cmdlet 对其执行进一步操作的对象。该 cmdlet 会查找默认分区或命名上下文来查找对象。如果发现两个或多个对象,则返回非终止错误。
此参数的值通常是可分辨名称,但也可以使用其他常见属性,例如 name、samAccountName 和 GUID。
Get-ADObject –Identity “AbbeyCrawford” –Server “dcexch2013.milkyway.local”
上面的命令还使用了-Server参数,它将范围从目录缩小到特定的目录服务器。
使用过滤器参数
Filter 参数非常强大 - 您可以指定复杂的查询字符串来检索所需的 AD 对象。
过滤器参数的运算符
OperatorMeaningExample-eqEqual toName -eq ‘Inga’-neNot equal toCountry -ne ‘US’-gtGreater thanBadLogonCount -gt ‘0’-geGreater than or equalModified -ge ’06-04-2022 12:00:00?-ltLess thanLastLogonTimeStamp -lt ’01-08-2021?-leLess than or equalCreated -le ’01-08-2020?-likeMatching a wildcard patternMail -like ‘*@xyz.com’-notlikeNot matching a wildcard patternDepartment -notlike ‘*’-andAndCountry -eq ‘US’ -and Department -eq ‘Operations’-orOrCountry -eq ‘US’ -or -Country -eq ‘UK’示例 1:获取 AD 计算机对象
要从 Active Directory 检索计算机对象,请使用以下命令:
Get-ADObject -Filter {(objectClass -eq "user") -and (objectCategory -eq "computer")}
请注意,此示例使用 -and 运算符指定两个过滤器:
- 第一个定义对象类(即用户,因为计算机对象属于用户对象类)。
- 第二种使用对象类别将结果限制为计算机对象。
示例2:获取AD用户对象
我们可以使用与计算机对象相同的过滤器来获取有关域中所有用户的信息,只需将对象类别更改为用户:
Get-ADObject -Filter {(objectClass -eq "user") -and (objectCategory -eq "user")}
请注意,输出显示每个 AD 用户的专有名称、用户名、对象类和 GUID。
示例 3:从特定 OU 获取 AD 对象
要从特定 OU 获取对象,请使用 -SearchBase 参数指定 OU 的可分辨名称:
Get-ADObject -Filter * -SearchBase 'OU=NBC,DC=milkyway,DC=local'
示例 4:查找 Active Directory 联系人
要获取联系人对象,请将对象类更改为联系人。这里我们还使用 -Properties 参数在输出中包含每个联系人的 CN:
Get-ADObject -Filter 'objectClass -eq "contact"' -Properties CN | Format-List CN
示例 5:通过将 SID 分配给变量来查找 AD 用户
在这里,我们将用户的 SID(安全标识符)分配给变量 $ObjectSid 并使用它来检索该用户的选定属性:
$ObjectSid = 'S-1-5-21-2144973983-3571309751-2556536001-2005'
Get-ADObject -Filter "objectSid -eq '$ObjectSid'" -Properties * | Select-Object name,distinguishedname,samaccountname,userprincipalname
在上面的脚本中,用户帐户的 SID 存储在 $ObjectSID 变量中。 Get-ADObject cmdlet 使用筛选运算符 -eq 查询 $ObjectSID 并将输出传递到 Select-Object cmdlet。然后,第二个 cmdlet 打印根据 SID 返回的对象的所需属性。
使用 LDAPFilter 参数
LDAPFilter 参数与 Filter 参数类似,不同之处在于您必须利用 Active Directory 架构属性来检索必要的数据。
示例 1:列出所有 AD 站点
例如,您必须使用“ObjectClass”属性来搜索 Active Directory 中的所有站点。例如,以下命令将列出所有 Active Directory 站点及其关联属性:
Get-ADObject –LDAPFilter “(ObjectClass=Site)” –SearchBase “CN=Configuration,DC=Virgo,DC=Local”
示例 2:列出所有 OU
同样,要检索 OU 列表,您必须将“ObjectCategory”指定为“OrganizationalUnit”。
Get-ADObject –LDAPFilter "(ObjectCategory=OrganizationalUnit)" –SearchBase "DC=Virgo,DC=Local"
示例 3:列出所有 DC
以下命令将使用该组的 PrimaryGroupID (516) 显示主安全组为域控制器的计算机对象:
Get-ADObject –LDAPFilter "(&(ObjectCategory=Computer)(PrimaryGroupID=516))" –SearchBase "DC=Virgo,DC=Local"
示例 4:列出全局组
使用以下命令获取全局组的信息:
Get-ADObject –LDAPFilter "(GroupType:1.2.840.113556.1.4.803:=2)" –SearchBase "DC=Virgo,DC=Local"
将结果导出到 CSV 文件
要将任何 PowerShell cmdlet 的输出导出到 CSV 文件而不是在 PowerShell 控制台中显示,只需将结果通过管道传输到带有文件名目标的 Export-CSV cmdlet,如下所示:
Get-ADObject -Filter 'objectClass -eq "container"' | Export-Csv -Path C:\TestFolder\containers.csv
其他示例
下面是 Get-ADObject cmdlet 的一些其他示例,其中包含前面讨论的参数以及 Excel 中显示的结果:
Get-ADObject –LDAPFilter "(ObjectClass=Site)" –SearchBase "CN=Configuration,DC=Virgo,DC=Local" | Export-Csv -Path C:\TestFolder\sites.csv
Get-ADObject –LDAPFilter "(&(ObjectCategory=Computer)(PrimaryGroupID=516))" –SearchBase "DC=Virgo,DC=Local" | Export-Csv -Path C:\TestFolder\computer.csv
Get-ADObject –LDAPFilter "(GroupType:1.2.840.113556.1.4.803:=2)" –SearchBase "DC=Virgo,DC=Local" | Export-Csv -Path C:\TestFolder\GlobalGroups.csv
Get-ADObject –LDAPFilter "(ObjectCategory=OrganizationalUnit)" –SearchBase "DC=Virgo,DC=Local" | Export-Csv -Path C:\TestFolder\OrganizationalUnits.csv
结论
Get-ADObject cmdlet 是用于检索有关 Active Directory 对象信息的强大工具。请务必亲自尝试此处描述的三个参数 — Identity、Filter 和 LDAPFilter — 以及 SearchBase 等参数,以将搜索限制为特定 OU。您将快速学习如何创建命令来检索许多不同情况下所需的信息。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag