如何使用别名邮件地址而不是实际的用户主体名称来过滤用户。像下面的
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var user = await graphClient.Users
.Request()
.Filter("UserPrincipalName eq 'aaa@aaa.com'")
.GetAsync();
现在,我得到了"未找到";使用别名地址时出错。
感谢您的帮助。
UserPrincipalName
的通用格式为alias@domain,其中域必须存在于租户的已验证域集合中。
当电子邮件地址填充为备用电子邮件时搜索用户:
CCD_ 2具有用于用户的附加电子邮件地址的列表;例如:[〃;bob@contoso.com&"Robert@fabrikam.com"]。
.Filter($"otherMails/any(id:id eq 'user@example.com'")
当电子邮件地址填充为登录名时搜索用户:
.Filter($"identities/any(id:id/issuerAssignedId eq 'user@example.com' and id/issuer eq 'contoso.onmicrosoft.com')")
有关个人电子邮件地址的更多信息,请参阅此处。
如果您所指的别名地址是SMTP地址,例如:[quot;SMTP:bob@contoso.com&"smtp:bob@sales.contoso.com"]。您可以使用proxyAddresses
;smtp";是必需的。
https://graph.microsoft.com/v1.0/users?$filter=proxyAddresses/any(c:c eq 'smtp:aaa@aaa.com')
.Filter($"proxyAddresses/any(c:c eq 'smtp:aaa@aaa.com'")