用于 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\Microsoft 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\Microsoft Azure AD Connect Provisioning Agent\Utility\AADCloudSyncTools"再次导入模块。

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

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

    PowerShell 窗口中通知的屏幕截图,其中显示已成功安装必备组件。

  8. 每次要在新的 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 预配代理\跟踪中找到跟踪日志,有关详细信息,请参阅 云同步故障排除

Connect-AADCloudSyncTools

此 cmdlet 使用 MSAL.PS 模块请求一个令牌,以便 Microsoft Entra 管理员可以访问 Microsoft Graph。

Export-AADCloudSyncToolsLogs

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

  1. 设置详细跟踪,并开始从预配代理手机数据(与 Start-AADCloudSyncToolsVerboseLogs 相同)。
  2. 3 分钟后停止数据收集,并禁用详细跟踪(与 Stop-AADCloudSyncToolsVerboseLogs 相同)。
  3. 收集过去 24 小时内的事件查看器日志。
  4. 将所有代理日志、详细日志和事件查看器日志压缩到用户“文档”文件夹中的 .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

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

Get-AADCloudSyncToolsJobStatus

此 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 调用一个 Web 请求,并将 URI、方法和正文作为参数进行指定。

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 预配代理\跟踪文件夹中找到这些跟踪日志。

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"

后续步骤