我需要根据用户的电子邮件地址(他们已收到许可证)找到用户,然后将其连接回他们的主要身份以进行内部计费。
在 AD 中有 2 个字段保存电子邮件:
email
proxyAddresses.*
如何根据任意一个电子邮件地址找到实际用户的身份
通过主要电子邮件地址查找用户非常简单:
# user based on primary email
& az ad user list --query "[?mail=='$email'].userPrincipalName"
根据电子邮件别名查找用户有点困难。在我们的例子中,这些都存储在用户配置文件中的
proxyAddresses
字段中,并且这些值以 smtp:
为前缀。要找到它们,请使用:
# user based on alias
& az ad user list --filter "proxyAddresses/any(p:p eq 'SMTP:$email')" --query "[].userPrincipalName"