You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Azure本地环境获取Microsoft Entra Connect最后同步详情?

获取Azure AD Connect最后同步时间并监控延迟的PowerShell脚本

需求:从本地Azure环境获取最后同步数据,对应路径为:Microsoft Entra Connect > Connect Sync > 从Active Directory预配 > Microsoft Entra Connect同步 > 最后同步。

以下是实现该需求的PowerShell脚本:

# 使用服务账号连接Azure AD
Import-Module MSOnline
Connect-MsolService

# 获取租户信息
$companyInfo = Get-MsolCompanyInformation

# 获取最后目录同步时间
$lastSyncTime = $companyInfo.LastDirSyncTime
$currentTime = Get-Date

# 计算时间差
$timeDifference = $currentTime - $lastSyncTime

# 检查同步延迟是否超过1小时
if ($timeDifference.TotalHours -gt 1) {
    <## 邮件告警配置(取消注释即可启用)
    $smtpServer = "smtp.yourdomain.com"  # 替换为你的SMTP服务器地址
    $smtpFrom = "monitor@yourdomain.com"  # 替换为发件人邮箱
    $smtpTo = "admin@yourdomain.com"      # 替换为收件人邮箱
    $subject = "告警:目录同步延迟"
    $body = "最后一次目录同步发生于 $lastSyncTime,已超过1小时未同步。"

    # 发送告警邮件
    Send-MailMessage -From $smtpFrom -To $smtpTo -Subject $subject -Body $body -SmtpServer $smtpServer##>
    Write-Output "同步延迟时长:$timeDifference"
}else{
    Write-Output "Azure AD 同步状态正常"
}

脚本说明

  • 依赖模块:需提前安装MSOnline模块,可通过Install-Module MSOnline命令安装(需管理员权限)。
  • 权限要求:运行脚本的账号需具备读取Azure AD租户信息的权限。
  • 告警功能:若需要启用邮件告警,移除邮件配置块的注释符号,并替换其中的SMTP服务器、邮箱地址等信息。

内容的提问来源于stack exchange,提问作者Abivanth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 09:00:54