首页 > 解决方案 > 图表用户中的用户主体名称与邮件

问题描述

我将 SharePoint 中的用户列出到自定义数据库表中,以便在自定义应用程序中使用。在将这些用户添加到自定义数据库时,我们需要 Azure Active Directory 中的用户 ID(而不是 SharePoint 中的用户 ID)。

因此,基于来自 SharePoint 的用户电子邮件,我在 Azure AD 中搜索用户并获取 ID。

对于某些用户,我看到 Graph User 对象中的 Mail 字段为空,但用户主体名称字段填充了电子邮件。对于其他用户,邮件和用户主体名称都已填写。

用户的邮件字段为空的原因是什么?我应该依赖哪个字段作为电子邮件值?

谢谢!

标签: azureazure-active-directory

解决方案


用户的邮件字段为空的原因是什么?

该值仅用于Guest User。当您guest user在租户上添加一个字段时Email address,下面显示的字段将被视为mail当您使用获取用户列表时,Microsoft Graph API您将看到该电子邮件值。

在此处输入图像描述

PostMan Test:

在此处输入图像描述

我应该依赖哪个字段作为电子邮件值?

您可以依赖 azure 门户上的userPrincipalName哪个User name是强制性属性。设置后,userPrincipalName您可以将其用于需要租户用户电子邮件的任何场景,例如user login on portal

看截图:

在此处输入图像描述

希望这会有所帮助。


推荐阅读