【问题标题】:Using Active Directory user info with SQL通过 SQL 使用 Active Directory 用户信息
【发布时间】:2013-10-02 03:47:08
【问题描述】:

我在公司域上有一个 SQL 支持的项目,用户都是公司 Active Directory 的成员。

我真的不想创建单独的 SQL 用户数据库和缓存名称、电子邮件等。

当需要将记录绑定到用户而不是缓存 Active Directory 用户时,我宁愿将相关用户的 Active Directory objectSid 或 objectGuid(哪个最好?)存储在我的 SQL 表行中。

这里最好的方法是什么?我已经编写了一些 CLR,并且使用 CLR 存储过程,我可以生成一个 LDAP 查询来从 ObjectSids 中获取特定的活动目录记录,我将其用作从我的 MsSQL 数据库指向 Active Directory 中的记录的指针。

这真的是最好的方法吗?这很痛苦,虽然足以满足我的需求,但我认为必须有一种不那么麻烦的方法。

【问题讨论】:

    标签: sql sql-server active-directory


    【解决方案1】:

    最简单的方法,我认为最好的方法是创建一个小型服务,该服务将获取您的 AD 信息并填充/更新 SQL Server 中的表。我们有一项服务,大约每小时运行一次,它使表格保持最新状态。我们使用 ADGuid 来识别用户,这样对名称、登录名、电子邮件地址等的任何更改都不会影响数据库。然后,您可以使用参照完整性来确保用户存在于 AD 中。

    我们的应用使用 ADFS 来登录用户,因此我们始终拥有识别用户的 guid,并且可以从表中获取所需的任何额外信息。

    您不希望每次用户执行操作时都轮询 AD,数据库的效率要高得多,如果需要,您始终可以在应用程序中以滑动/绝对比例缓存用户信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-07
      • 2017-01-28
      • 1970-01-01
      相关资源
      最近更新 更多