用于 Microsoft Entra Cloud Sync 的 AADCloudSyncTools PowerShell 模块

AADCloudSyncTools 模块提供了一组有用的工具,可帮助管理 Microsoft Entra Cloud Sync 的部署。

先决条件

可以使用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 模块

  1. 使用管理权限打开 Windows PowerShell。

  2. 运行 Import-module -Name "C:\Program Files\Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"

  3. 若要验证模块是否已导入,请运行 Get-module AADCloudSyncTools

    现在应会看到有关模块的信息。

  4. 若要安装 AADCloudSyncTools 模块先决条件,请运行 Install-AADCloudSyncToolsPrerequisites

  5. 首次运行时,将安装 PowerShellGet 模块(如果不存在)。 若要加载新的 PowerShellGet 模块,请关闭 PowerShell 窗口,并打开具有管理权限的新 PowerShell 会话。

  6. 通过运行 Import-module -Name "C:\Program Files\Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"再次导入模块。

  7. 再次运行 Install-AADCloudSyncToolsPrerequisites 以安装 MSAL 和 Microsoft Graph PowerShell 模块。

    现在应安装所有必备组件。

    PowerShell 窗口中显示先决条件已成功安装的通知的屏幕截图。

  8. 每次要在新的 PowerShell 会话中使用 AADCloudSyncTools 模块时,运行以下命令:

    Import-module "C:\Program Files\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 的令牌。

导出-AADCloudSync工具日志 (Export-AADCloudSyncToolsLogs)

此 cmdlet 导出并打包压缩文件中的所有故障排除数据,如下所示:

  1. 设置详细跟踪并开始从配置代理收集数据(与 Start-AADCloudSyncToolsVerboseLogs 相同)。
  2. 在三分钟后停止数据收集,并禁用详细跟踪(与Stop-AADCloudSyncToolsVerboseLogs相同)。
  3. 收集过去 24 小时内的事件查看器日志。
  4. 将所有代理日志、详细日志和事件查看器日志压缩到用户的 Documents 文件夹中 .zip 文件中。

可以使用以下选项微调数据收集:

  • SkipVerboseTrace 仅导出当前日志,而不捕获详细日志(默认值为 false)。
  • TracingDurationMins 指定不同的捕获持续时间(默认值 = 3 分钟)。
  • OutputPath 指定其他输出路径(默认 = 用户的 Documents 文件夹)。

Get-AADCloudSyncToolsInfo

此 cmdlet 显示 Microsoft Entra 租户详细信息和内部变量的状态。

Get-AADCloudSyncToolsJob

此 cmdlet 使用 Microsoft Graph 获取Microsoft Entra 服务主体并返回同步作业的信息。 还可以使用特定的同步作业 ID 作为参数来调用它。

Get-AADCloudSyncToolsJobSchedule

此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的时间表。 还可以使用特定的同步作业 ID 作为参数来调用它。

Get-AADCloudSyncToolsJobSchema

此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 的服务主体,并返回同步作业的架构。

Get-AADCloudSyncToolsJobScope

此 cmdlet 使用 Microsoft Graph 获取提供的同步任务 ID 的同步任务架构,并输出所有筛选器组的范围信息。

Get-AADCloudSyncToolsJobSettings

此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra 服务主体并返回同步作业的设置。 还可以使用特定的同步作业 ID 作为参数来调用它。

Get-AADCloudSyncToolsJobStatus (获取AAD云同步工具作业状态)

此 cmdlet 使用 Microsoft Graph 获取Microsoft Entra 服务主体并返回同步作业的状态。 还可以使用特定的同步作业 ID 作为参数来调用它。

Get-AADCloudSyncToolsServicePrincipal

此 cmdlet 使用 Microsoft Graph 获取 Microsoft Entra ID 和/或 Azure Service Fabric 的服务主体对象。 如果没有参数,它将仅返回Microsoft Entra 服务主体。

Install-AADCloudSyncToolsPrerequisites

此 cmdlet 检查是否存在 PowerShellGet v2.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 预配代理\Trace 中找到这些跟踪日志。

Stop-AADCloudSyncToolsVerboseLogs

此 cmdlet 修改 AADConnectProvisioningAgent.exe.config 以禁用详细跟踪并重启 AADConnectProvisioningAgent 服务。 可用于 -SkipServiceRestart 防止服务重启,但任何配置更改都不会生效。

Suspend-AADCloudSyncToolsJob

此 cmdlet 会暂停同步。

Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention

禁用意外删除Prevention 租户功能

Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention -tenantId <TenantId>

此 cmdlet 需要 TenantId Microsoft Entra 租户。 它将验证在使用 Microsoft Entra Connect(ADSync,而非云同步)设置的租户上,“意外删除防护”功能是否已启用,并在已启用的情况下禁用该功能。

例:

Disable-AADCloudSyncToolsDirSyncAccidentalDeletionPrevention -tenantId "aaaabbbb-0000-cccc-1111-dddd2222eeee"

后续步骤