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

如何使用Azure CLI批量检查CSV中的邮箱是否存在于Active Directory

当然可以用Azure CLI搞定这个需求!我之前帮团队做过类似的批量验证任务,分享下具体的步骤和脚本思路:

使用Azure CLI批量验证CSV中邮箱对应的AD用户是否存在

1. 先准备好你的CSV文件

确保CSV格式规范,比如单独列一个Email字段,每行对应一个要验证的邮箱,示例格式如下:

Email
user1@contoso.com
user2@contoso.com
user3@contoso.com

2. 核心实现:结合Azure CLI与脚本批量验证

Azure CLI的az ad user show和az ad user list命令可以直接查询Azure AD用户,我们可以用脚本读取CSV内容,逐个(或批量)验证邮箱对应的用户是否存在,完全不需要搭建本地AD服务器。

方案一:PowerShell脚本(适合Windows环境)

# 读取CSV文件
$userList = Import-Csv -Path "C:\你的路径\users.csv"

# 遍历每个邮箱做验证
foreach ($item in $userList) {
    $targetEmail = $item.Email
    Write-Host "正在验证: $targetEmail"
    
    # 用Azure CLI查询匹配该邮箱的用户,仅返回用户ID减少输出
    $userId = az ad user show --filter "mail eq '$targetEmail'" --query "id" -o tsv 2>$null
    
    if ($userId) {
        Write-Host "* 验证通过:邮箱 $targetEmail 对应的用户存在,用户ID:$userId" -ForegroundColor Green
    } else {
        Write-Host "* 验证失败:邮箱 $targetEmail 未找到对应的AD用户" -ForegroundColor Red
    }
}

小提示:2>$null是用来屏蔽用户不存在时CLI抛出的错误信息,让输出更整洁;--filter参数是精准匹配邮箱的关键。

方案二:Bash脚本(适合Linux/macOS/WSL环境)

#!/bin/bash

# 跳过CSV表头,逐行读取邮箱
tail -n +2 "/你的路径/users.csv" | while IFS=, read -r targetEmail; do
    echo "正在验证: $targetEmail"
    
    # 查询匹配邮箱的用户ID
    userId=$(az ad user show --filter "mail eq '$targetEmail'" --query "id" -o tsv 2>/dev/null)
    
    if [ -n "$userId" ]; then
        echo "* 验证通过:邮箱 $targetEmail 对应的用户存在,用户ID:$userId"
    else
        echo "* 验证失败:邮箱 $targetEmail 未找到对应的AD用户"
    fi
done

3. 效率优化建议

如果要验证的邮箱数量很多(比如上千个),逐个查询会很慢,建议用批量查询减少API调用次数:

# 示例:一次批量查询50个邮箱
$batchEmails = @("user1@contoso.com","user2@contoso.com",...,"user50@contoso.com")
$filterString = "mail in ('$($batchEmails -join "','")')"
az ad user list --filter $filterString --query "[].{Email:mail, UserId:id}" -o table

一次最多可以批量查询50个邮箱,能大幅提升处理速度。

注意事项

  • 确保你的Azure CLI账号有足够权限:至少需要User.Read.All权限,可通过az ad signed-in-user show --query "permissions"查看当前权限,不够的话联系租户管理员分配Directory Readers角色。
  • 提前清理CSV文件:移除空白行、格式错误的邮箱,避免脚本执行异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 14:23:14