Active Directory中“国家/地区”字段的值是多少?

时间:2011-02-02 21:20:32

标签: active-directory ldap

我有一种感觉Windows期望'country'是一个整数,0表示'US'。如果是这种情况,那么整数和ISO 2字母国家/地区代码之间的映射是什么?活动

3 个答案:

答案 0 :(得分:8)

请在此处查看此链接:

ISO 3166 Country Codes

似乎是多个地方使用的标准ISO 3166国家/地区代码。

此帖子的结果相同:Active Directory和.NET

第5点读:

  

5。设置用户的国家/地区

     

设置用户的国家/地区属性   是我的一项任务   时间弄清楚。几个小时后   研究我意识到你需要   了解 ISO 3166代码   国家并设置三个属性   定义用户的国家:c,co和   COUNTRYCODE。

可以在Wikipedia - of course找到包含难以捉摸的ISO 3166 数字代码的最佳概述! (在ISO本身,您似乎无法免费获得这些列表 - 您必须为特权付费....)

答案 1 :(得分:6)

有两个国家/地区属性countryCodec,两者都是ISO 3166值。前者是数字,后者是字符串(ISO 3166 A2)。

请参阅ISO 3166

此外,还有co属性,即国家/地区的名称。

答案 2 :(得分:6)

必须在Active Directory中设置三个不同的属性。每个都在ISO 3166 standard中指定。 ISO网站有一个search tool,您可以使用它来查找官方代码。选择国家/地区代码并点击搜索,然后点击左侧的正式分配...

  • c - 2位数字缩写(例如美国

      

    用户地址中的国家/地区。国家/地区代表基于ISO-3166的双字符代码。

  • co - 国家/地区名称(例如美国)。微软对这个问题的描述非常详细。

      

    用户所在的国家/地区。

  • countryCode - 数字ID(例如 840

      

    指定用户所选语言的国家/地区代码。 Windows 2000不使用此值。

    注意:如果要清除国家/地区字段,则需要将此值设置为0。您无法将其设置为nullString.Empty。如果您尝试将其设置为DirectoryServicesCOMException以外的其他任何内容,则会在您CommitChanges()时调用int来说明“服务器不愿意处理请求”。

    DirectoryEntry.Properties["countryCode"].Value = 0;