gpt4 book ai didi

azure-active-directory - 从 Microsoft Graph 获取域\用户名

转载 作者:行者123 更新时间:2023-12-05 01:43:26 25 4
gpt4 key购买 nike

我们有一个应用程序,我们以 domain\username 格式存储用户登录名。我们通过 Windows 进行身份验证,然后通过将我们从用户那里获得的 domain\username 与我们的数据库进行匹配,从我们的数据库中获取更多信息。

现在他们想迁移到云端。我们通过 Azure AD 中的应用程序对用户进行身份验证。但是,我们返回的 user 标识符是 first.last@domain.com

我摆弄过 https://graph.microsoft.com/v1.0/users/email 和 select 命令来尝试获取“旧”名称。然而,我还没有找到如何获得它。

他们迁移到云端的原因是他们正在合并两个 AD。所以一些用户将是 DomainA 和一些 DomainB,但在同一个租户中。所以我的第一个想法是尝试将邮件转换为其他格式。但是,这两个不同的 AD 具有不同的命名标准。一个有 DOMAINA\fila(名字的两个第一个字母和姓氏的两个第一个字母),另一个有 DOMAINB\firlas。另外,尝试以这种方式解决它感觉真的很难看。

是否可以通过 Microsoft Graph 获取格式为 domain\username 的用户登录名?

最佳答案

使用 beta 版的 Graph,您可以从 onPremisesDomainNameonPremisesSamAccountName 属性中获取用户的域和用户名:

/beta/users?$select=userPrincipalName,onPremisesDomainName,onPremisesSamAccountName

域存储为 FQDN,因此您需要进行一些转换。例如,domainName.ad.contoso.com 可能会转换为 domainName\)。

这将为您提供一个解决方法,以便您可以将用户与您的内部数据库相匹配。然而,这只是一个临时解决方案。从长远来看,您真的想要迁移到使用 userPrincipalName。这是主要用户标识符,保证在给定租户内是唯一的。

Azure AD 与旧版 Active Directory 略有不同。传统 AD 中的某些概念,如组织单位 (OU)、组策略对象 (GPO)、Kerberos 身份验证、轻量级目录访问协议(protocol) (LDAP)、多个域之间的域信任以及其他几个概念在云中根本不存在。

关于azure-active-directory - 从 Microsoft Graph 获取域\用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49429980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com