用于 Microsoft Entra 云同步的 AADCloudSyncTools PowerShell 模块
AADCloudSyncTools 模块提供了一套有用的工具,可帮助你管理 Microsoft Entra 云同步的部署。
先决条件
可以使用 Install-AADCloudSyncToolsPrerequisites
自动安装 AADCloudSyncTools 模块的所有必备组件。 你将在本文的下一部分中执行此操作。
下面是有关所需组件的一些详细信息:
AADCloudSyncTools 模块使用 Microsoft 身份验证库 (MSAL) 身份验证,因此需要安装 MSAL.PS 模块。 若要验证安装,请在 PowerShell 窗口中运行
Get-module MSAL.PS -ListAvailable
。 如果正确安装了该模块,你会收到响应。 如果需要,可以使用Install-AADCloudSyncToolsPrerequisites
来安装最新版本的 MSAL.PS。尽管 AADCloudSyncTools 模块的任何功能都不需要 Microsoft Graph PowerShell 模块,但这个模块很有用。 因此,在你使用
Install-AADCloudSyncToolsPrerequisites
时,会自动安装这个模块。从 PowerShell 库安装模块需要强制实施传输层安全性 (TLS) 1.2。 cmdlet
Install-AADCloudSyncToolsPrerequisites
在安装所有必备组件之前设置 TLS 1.2 强制。 若要确保可以手动安装模块,请先在 PowerShell 会话中完成以下设置,然后再使用 cmdlet:[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
如果 Microsoft Entra Connect 云预配代理未运行或配置向导未成功完成,AADCloudSyncTools 模块可能无法正常工作。
安装 AADCloudSyncTools PowerShell 模块
使用管理权限打开 Windows PowerShell。
运行
Import-module -Name "C:\Program Files\Microsoft Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"
。要验证模块是否已导入,请运行
Get-module AADCloudSyncTools
。现在应会看到有关模块的信息。
若要安装 AADCloudSyncTools 模块必备组件,请运行:
Install-AADCloudSyncToolsPrerequisites
。在首次运行时,将会安装 PowerShellGet 模块(如果尚不存在)。 若要加载新的 PowerShellGet 模块,请关闭 PowerShell 窗口,并使用管理员权限打开新的 PowerShell 会话。
再次运行
Import-module -Name "C:\Program Files\Microsoft Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"
以导入该模块。再次运行
Install-AADCloudSyncToolsPrerequisites
以安装 MSAL 和 Microsoft Graph PowerShell 模块。现在所有必备组件应该都已安装。
每次要在新的 PowerShell 会话中使用 AADCloudSyncTools 模块时,请运行以下命令:
Import-module "C:\Program Files\Microsoft Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"
AADCloudSyncTools cmdlet
注意
在使用 AADCloudSyncTools 模块之前,请确保 Microsoft Entra Connect 云预配代理正在运行,并且配置向导已成功完成。 若要排查向导问题,可以在 C:\ProgramData\Microsoft\Azure AD Connect Provisioning Agent\Trace 文件夹中找到这些跟踪日志,有关详细信息,请参阅云同步故障排除。
Connect-AADCloudSyncTools
此 cmdlet 使用 MSAL.PS 模块来请求令牌,以供 Microsoft Entra 管理员访问 Microsoft Graph。
Export-AADCloudSyncToolsLogs
此 cmdlet 导出所有故障排除数据并将它们打包到压缩文件中,如下所示:
- 设置详细跟踪,并开始从预配代理手机数据(与
Start-AADCloudSyncToolsVerboseLogs
相同)。 - 3 分钟后停止数据收集,并禁用详细跟踪(与
Stop-AADCloudSyncToolsVerboseLogs
相同)。 - 收集过去 24 小时内的事件查看器日志。
- 将所有代理日志、详细日志和事件查看器日志压缩到用户“文档”文件夹中的 .zip 文件中。
可以使用以下选项来微调数据集合:
SkipVerboseTrace
用于仅导出当前日志而不捕获详细日志(默认值 = false)。TracingDurationMins
用于指定不同的捕获持续时间(默认值 = 3 分钟)。OutputPath
用于指定不同的输出路径(默认值 = 用户的 Documents 文件夹)。
Get-AADCloudSyncToolsInfo
此 cmdlet 显示 Microsoft Entra 租户详细信息和内部变量的状态。
Get-AADCloudSyncToolsJob
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体,并返回同步作业的信息。 也可以使用特定的同步作业 ID 作为参数来调用此 cmdlet。
Get-AADCloudSyncToolsJobSchedule
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的计划。 也可以使用特定的同步作业 ID 作为参数来调用此 cmdlet。
Get-AADCloudSyncToolsJobSchema
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的架构。
Get-AADCloudSyncToolsJobScope
此 cmdlet 使用 Microsoft Graph 来获取所提供的同步作业 ID 的同步作业的架构,并输出所有筛选器组的范围。
Get-AADCloudSyncToolsJobSettings
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的设置。 也可以使用特定的同步作业 ID 作为参数来调用此 cmdlet。
Get-AADCloudSyncToolsJobStatus
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的状态。 也可以使用特定的同步作业 ID 作为参数来调用此 cmdlet。
Get-AADCloudSyncToolsServicePrincipal
此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra ID 和/或 Azure Service Fabric 的服务主体。 如果没有任何参数,则仅返回 Microsoft Entra 服务主体。
Install-AADCloudSyncToolsPrerequisites
此 cmdlet 将检查是否存在 PowerShellGet v 2.2.4.1 或更高版本、Microsoft Graph PowerShell 模块和 MSAL.PS 模块。 如果这些项缺失,则会安装。
Invoke-AADCloudSyncToolsGraphQuery
此 cmdlet 为指定为参数的 URI、方法和正文调用 Web 请求。
Repair-AADCloudSyncToolsAccount
此 cmdlet 使用 Microsoft Graph PowerShell 删除当前帐户(如果存在)。 然后,它会使用 Microsoft Entra ID 中新的同步帐户来重置同步帐户身份验证。
Restart-AADCloudSyncToolsJob
此 cmdlet 重新启动完全同步。
Resume-AADCloudSyncToolsJob
此 cmdlet 从上一个水印继续同步。
Start-AADCloudSyncToolsVerboseLogs
此 cmdlet 将修改 AADConnectProvisioningAgent.exe.config 以启用详细跟踪并重新启动 AADConnectProvisioningAgent 服务。 你可以使用 -SkipServiceRestart
来防止服务重启,但任何配置更改都不会生效。 可以在 C:\ProgramData\Microsoft\Azure AD Connect Provisioning Agent\Trace 文件夹中找到这些跟踪日志。
Stop-AADCloudSyncToolsVerboseLogs
此 cmdlet 将修改 AADConnectProvisioningAgent.exe.config 以禁用详细跟踪并重新启动 AADConnectProvisioningAgent 服务。 你可以使用 -SkipServiceRestart
来防止服务重启,但任何配置更改都不会生效。
Suspend-AADCloudSyncToolsJob
此 cmdlet 将暂停同步。
Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention
禁用 accidentalDeletionPrevention 租户功能
Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention -tenantId <TenantId>
此 cmdlet 需要 Microsoft Entra 租户的 TenantId
。 它将验证是否已启用在租户上通过 Microsoft Entra Connect(ADSync 而不是云同步)设置的意外删除防护功能,并禁用该功能。
示例:
Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention -tenantId "aaaabbbb-0000-cccc-1111-dddd2222eeee"