信息化 频道

Windows Server 2008下细粒度口令策略的实现

    【IT168 信息化

    Windows Server 2008细粒度口令策略无疑提高了域用户口令的灵活性。可以实现根据用户的级别来定义不同的口令策略。

    一、 细粒度口令策略的实现前提

  不过细粒度口令策略毕竟是Windows Server 2008服务器的功能,为此在使用起来有一定的限制条件。具体的来说,要在Windows Server 2008环境下实现细粒度口令策略,要遵循如下几个限制:

    1、如果管理员需要实现精细粒度的口令策略,则必须要将域中的所有域控制器升级到2008并将整个域都处于2008的功能模式下。虽然在以前的版本中,可以在森林域控制器上通过第三方口令更改实用程序来模拟实现这一功能,但是毕竟不是Windows环境下的功能。总之,要实现细粒度口令策略,必须要将整个域设置为2008级别。也就是说,域中所有的DC必须运行在2008的操作系统环境。注意这里只是强调所有的域控制器,包括辅助控制器,需要运行2008以上版本的操作系统。而客户端的话,没有这方面的强制要求。客户端可以运行诸如XP等版本的操作系统。

    2、如果在域环境中启用了细粒度口令策略,那么如果与其他口令策略发生冲突的时候,需要注意一个优先性的问题。也就是说需要注意哪一个口令策略会被覆盖,哪一个口令策略会生效。通常情况下,精细粒度口令策略要比域口令策略的优先性高。也就是说,如果他们两者发生冲突的话,那么域控制器将会采用精细粒度口令策略,而会忽视域口令策略。其次应用于用户的精细粒度口令策略总是优先于应用于组的口令策略设置。也就是说,无论什么情况下,精细粒度口令策略往往具有比较高的优先性。了解这个基本原则,对于后续口令策略的规划、口令安全性设计等工作具有非常重大的意义。

    3、了解精细口令策略在继承上的限制。如果在组的级别上或者用户级别上设置普通用户口令策略的话,可以为同一个用户设置多个口令力策略。其最终采用的口令策略通常情况下是比较复杂的一个策略。不过如果为用户设置细粒度口令策略的话,则与此不同。一般情况下,只允许系统管理员向一个用户施加一组口令策略。如果向同一个用户设置多个口令策略,一般也不会出错。只是其最终生效的,是具有比较低数字优先级的策略。注意,这又涉及到了另一个优先级问题。为了避免后续维护的麻烦,笔者建议最好只为一个用户设置一个密码策略。如果设置多个的话,最后系统管理员都会头疼。特别是普通口令策略、域口令策略与组口令策略、细粒度口令策略不要同时应用在一个用户上,那会增加口令策略的复杂性。想想看,如果同时在一个用户上应用这些口令策略,那么判断其最终生效的是哪一个口令策略,就需要花费管理员不少的经历。为了简化起见,虽然口令策略系统会采用不同的优先级来避免冲突,但是笔者还是建议同一个用户最好只采用一种口令力策略。

    二、 细粒度口令策略的具体配置。

    在2008环境下,口令设置对象一般存储在域控制器的口令设置容器中。通常情况下,为了为特定的用户创建特定的口令策略,需要通过一个特殊的工具,即ADSIEdit来实现。部署过域控制器的系统管理员一定知道,这是一款非常强大的低级目录编辑器。其不仅可以实现细粒度口令策略,为域中的用户实现不同的口令策略;而且还可以实现其他很多的功能。不过需要注意的是,这个工具是一个低级目录编辑器,如果使用的不小心的话,会带来灾难性的损失。通常情况下,如果使用这个工具进行比较大的更改时,都建议先对域控制器的相关配置进行备份,以备不时之需。

   1、 利用向导来进行配置。

    在2008版本中,ADSIEdit工具专门提供了一个向导,来为特定的用户设置特定的口令策略。通过这个向导工具,可以在2008域控制器中自动创建口令策略并运行在口令策略上设置与细粒度口令策略相关的大部分属性。通常情况下,为了避免不必要的麻烦,笔者强烈建议通过向导来创建细粒度口令策略。在使用向导来创建细粒度口令策略时,以下几个参数要引起特别的关注。

    一是msDS-Password。笔者在谈到细粒度口令策略的限制条件时谈到过,如果在同一个用户上设置多个细粒度口令策略的话,那么具有比较低数字优先级的策略将被启用。这个数字就是在这个参数中定义。这里设置的数字越小,其优先性越高。为了提高口令力策略的灵活性,笔者建议存在多个口令策略的情况下,可以在数字的两边留出空格一重新排序优先级。或者说,以10位单位设置这个参数。然后后续需要调整的话,只要个别调整数字,如将20调整为31。如此,就可以只通过调整一个口令策略从而实现优先级的调整。这相当于不少信息化管理系统,其项目的行号都是以10位单位进行递增一样,其目的都是为了后续用户能够根据需要对记录记录进行排序。

    二是msDS-PasswordComplexity。通常情况下我们之所以要采用细粒度口令策略,往往是为了提高用户口令策略的灵活性。特别是为了实现对服务器用户与普通用户实现不同道口令策略。如对服务器用户的口令要求进行复杂性的认证。而这个参数就是为实现这个目的而设的。顾名思义,这个参数就是用来控制是否需要启用口令复杂性的策略。如果起用的话,则这个策略会强制要求用户的口令包含数字、大写字母、小写字母和特殊字符的组合作为其口令的一部分。一般情况下,只要启用了这个策略,那么就要求用户所设置的口令中必须要包含三种以上的字符。不过对于普通用户来说,这么高的安全策略有点大材小用。为此一般只针对服务器的帐户才启用这个口令复杂性策略。

    三是msDS-MinimunPasswordAge参数。这个口令会控制将口令重新设置为不同口令必须等待的最少天数。这个参数跟上面的参数作用类似,也是为了提高密码的安全性所涉及的。设置这个参数的目的就是不允许用户简单的通过轮转口令变化的方式来保持相同的口令。某人情况下这个参数的值是3。也就是说,在三天之内不运行采用相同的口令。

    其他的参数跟普通口令策略类似,这里就不做过多的参数了。在这众多的参数中,系统管理员特别需要注意的还是第一个参数,即跟口令策略优先级相关的数字。在设置这个参数的时候,一定要为后续的口令策略留有余地,要能够方便后续优先性的调整。

    2、 手工更改或者创建细粒度口令策略。

    除了使用向导之外,域管理员还可以通过手工来创建口令策略,或者说对已有的口令力策略进行修改。虽然说笔者不建议这么做,但是系统毕竟还提高了这一个功能。

    如果需要手工更改或者创建口令策略的话,则可以在管理工具菜单中打开ADSIEdit工具。打开这个工具后,可以选择创建或者修改,来维护特定的口令策略。在维护的时候,这里可以调整利用向导创建过程中的任何一个参数,包括优先性、口令复杂性策略等等。如果采用手工创建口令策略,需要注意为这个口令策略取名字的时候,要保证其名字的唯一。否则的话,系统会报错。

 

0
相关文章