首页 > 解决方案 > 外部身份提供者服务中的用户和本地数据库表之间的关系

问题描述

我创建了一个 asp.net 应用程序使用外部身份提供程序进行身份验证(Azure Active Directory)

如何创建用户和本地数据库表之间的关系?

标签: asp.net.netasp.net-mvcazure-active-directory

解决方案


您可以将 Active Directory 中的用户idUPN(userPrincipalName) 存储在您自己的数据存储中。这两个字段都在您从 AD 获得的令牌中。在Access Tokens - Payload 声明中,您会看到该oid字段和该upn字段都可用。我的偏好是使用oid.

id
用户的唯一标识符。继承自目录对象。钥匙。不可为空。只读。

userPrincipalName
用户的用户主体名称 (UPN)。UPN 是基于 Internet 标准 RFC 822 的用户的 Internet 样式登录名。按照惯例,这应该映射到用户的电子邮件名称。一般格式为 alias@domain,其中域必须存在于租户的已验证域集合中。创建用户时需要此属性。租户的已验证域可以从组织的已验证域属性访问。支持 $filter 和 $orderby。

来源:用户资源类型 - 属性

这将使您能够追溯到 AD 中的特定用户。


推荐阅读