Active Directory 用户属性列表

Gre*_*Gre 4 active-directory schema user-accounts

我正在尝试查找可用于自定义而无需扩展架构的 Active Directory 用户属性列表。我们使用的是2008R2功能级别。

我导出了一个包含所有属性的 powershell 列表。但我不知道如何分辨哪些是我可以编辑的用户信息(例如显示名称、电话、员工 ID)和我不应该手动编辑的 AD 数据(dn、accountexpires)。我可以从这个列表中看到一些明显的,比如employee-id、extensionAttribute1-15。

Get-QADUser 'username' -IncludeAllProperties |  Get-Member -MemberType Properties
Run Code Online (Sandbox Code Playgroud)

我找到了一些列出所有属性的网站,但没有一个网站区分用户信息和广告数据。

这个 Microsoft 列表将属性划分为属性集:Public-Information、User-Logon 等,但仍然没有在 user-info 和 AD-Data 之间划分列表。它也不包括员工 ID 或 extensionAttribute1-15

问题:此列表是否存在可用于自定义的 Active Directory 用户属性?谢谢

编辑:附加信息:我们的开发人员希望为新应用程序的所有用户帐户附加一些信息。他们想要附加的数据的第一个示例是员工 ID。AD 中已存在此字段。我不反对扩展架构,我只是不想不必要地更改内容或复制已经存在的字段。如果我可以给他们一个列表,那么可能会有我们可以使用的具有适当名称的字段。如果没有,那么我将扩展架构。

改写问题:我可以将哪些属性用于我自己的目的(例如显示名称、电话、员工 ID)?我应该保留哪些属性(dn、lastModifiedDate、accountexpires)?

Rya*_*ger 6

简短的回答是,实际上只有几个属性用于用户帐户上的装饰元数据,例如descriptioninfo。即使是extensionAttributeX那些并不是真正用于您的定制。它们是 Exchange 架构扩展的一部分,如果您实际运行 Exchange,则应将其视为“保留”。

一个更好的问题是你为什么要避免扩展你的模式?这样做没有什么本质上的风险。如果您有在特定类上添加特定于业务的自定义元数据的有效用例,请提供一个逻辑属性名称,然后添加它。也许确保您的 ldif 文件在您首先提出的临时一次性 DC 上按照您打算的方式工作。但归根结底,这是保证没有其他东西会踩到它或受它影响的唯一方法。

如果您因为政治问题而试图避免它(您的团队不管理 AD 并且 AD 团队反对架构更改),那么打好仗并为更改做出商业理由仍然符合您的最佳利益(假设您实际上有很好的商业理由)。

如果您的需求只是暂时的,那么也许只是使用类似descriptioninfo知道您的用户管理团队可能会意外搞砸数据的东西。也有可能一些写得不好的第三方软件可能有相同的想法并与您的想法冲突。

您可能还想使用有关您尝试添加的数据类型的更多细节来更新您的问题。可能存在您可以使用的现有属性,这些属性已经用于您的目的。

对编辑的回应:正如您所指出的,已经有一个您可以使用的员工ID 属性。还有一个employeeNumber属性。但同样,问题根源的答案是没有其他软件使用的预先存在的可写属性的明确列表。执行您正在尝试执行的操作的最佳方法是为您域中的用户打开属性对话框,选择“属性”选项卡,将过滤器更改为Show only writable attributes并向下滚动以查找尚未包含任何数据的内容这可能适合您的数据定义。然后,谷歌该特定属性名称以查看该属性的预期目的是什么,并作为完整性检查以查看您在环境中使用的任何内容是否也使用它。