http://blogs.technet.com/koalra/archive/2007/05/07/windows-server-code-name-longhorn-16.aspx


꼬알라주 : Windows Server Codename Longhorn의 이름이 Windows Server 2008로 바뀜에 따라 제목과 태그를 변경합니다.

한 1주일 만에 글을 제대로 쓰는 것 같습니다 :) Windows Server 2008 베타 3이 출시되면서, 여기저기 세미나다 인터뷰다 해서 조금 바뻤습니다. 혹시라도 글을 기다리셨던 분이 계셨다면 죄송합니다 (__)

"꼬알라"라는 사용자는 암호를 최대 10자 이상, 최대 사용 기간 15일, 역해독 금지, "엔젤"이라는 사용자는 암호에 대한 제한이나 복잡성 제한을 두고 싶지 않다.

위의 시나리오를 제안받는다면, 뭐라고 답을 하시겠습니까?

"액티브 디렉터리의 도메인을 나눠야 합니다."

image

네 맞습니다. Windows Server 2003까지, 도메인내 사용자의 암호 정책은 OU단위가 최소가 아니라, 도메인 단위가 최소 단위가 되었습니다. 조직 구성 단위(OU)로 사용자들을 분리하고 그룹 정책을 생성하면, 해당 정책은 도메인 사용자 계정에 대한 정책이 아닌, 개개별 머신에 대한 로컬 보안 데이터베이스(SAM)에 대한 정책으로 부여되었습니다. 암호 정책뿐만 아니라, 사용자의 계정 잠금 정책도 마찬가지였습니다.

image

"Fine-Grained Password Policy"라고 들어보셨나요? 한글로 해석하면 "결이 고운 암호 정책"... 다소 모호합니다만, 확실한건 암호 정책이 기존보다는 훨씬 나아졌다는 것입니다. Windows Server 2008에서의 암호 정책은 최소 적용 단위가 User, Group이 되게됩니다. 또한 기존의 그룹 정책을 사용하는 것이 아니라, 현재 베타 3 버전은 ADSIEDIT를 이용하여 PSO(Password Settings Objects)를 생성하여야 합니다.

어디다 생성하여야 하냐면 바로 PSC(Password Settings Container)가 액티브 디렉터리 도메인 파티션내에 존재합니다.

image

PSO를 생성시, 암호의 복잡성, 암호의 최소(최대) 길이, 역 해독 가능 암호 저장, 최소, 최대 사용 기간, 계정 잠금 기간, 임계값 등 암호와 관련된 정보를 모두 개체화 시키게 됩니다.

image

PSO에는 중요한 두가지 속성 값이 있습니다.

PSO Link : 적용할 계정, 그룹에 대한 DN 값 (PSOApplied)
Precendence : 여러 PSO 적용시 우선 순위, 낮을 수록 우선 순위는 높습니다. 여러 PSO는 합쳐지지 않습니다.

PSO가 적용되는 규칙은 다음과 같습니다.

1. 사용자에게 직접 부여한 PSO
2. 사용자가 포함된 그룹에 부여한 PSO
3. PSO가 부여되지 않은 사용자는 기존과 동일하게 Default Domain Policy를 적용

- 여러 PSO가 같은 레벨에서 부여되었을 경우 Precendence 우선 순위에 따라 부여됩니다.

특정 계정이 어떠한 PSO를 적용받았는지에 대해서는 간단하게 PowerShell 스크립트를 통해 알아낼 수 있습니다.

$principal=[ADSI]'LDAP://$args'
$appliedPSO=$principal.get("msDS-PSOApplied")
$PSO=[ADSI]'LDAP://$appliedPSO'
$minpwdlength=$PSO.get("msDS-MinimumPasswordLength")
$lockout=$PSO.get("msDS-LockoutThreshold")
write-host "Password length: $minpwdlength"
write-host "Lockout: $lockout"

./get-pwdpolicy.ps1 'CN=Seung Joo Baek,OU=Koalra-OU,DC=Angel,DC=Com'

마지막으로 사용자가 어떠한 PSO를 적용받았는지를 알고 싶을 수 있습니다. 직접 사용자에게 부여될 수도 있고, 그룹을 통해서 부여될 수도 있습니다, Directly이건, InDirectly이건.. 결과값만 알면 되죠. 바로 사용자의 속성 중에 ResultantPSO라는 속성에 해당 PSO의 DN이 저장되게 됩니다.

좀더 세밀하게 나누어진 사용자 암호 관리 정책 및 그룹 단위 부여가 가능해진 Windows Server 2008의 암호 정책, 베타 3이긴 하지만, 매우 매력적으로 느껴집니다. 지금까지 IT 관리자분들께서 고민하셨던 암호 관련 고민을 손쉽게 해결할 수 있는 시나리오이지 않나 싶습니다. :)

+ Recent posts