Azure AD Domain Services パスワード ポリシー まとめ

Pocket

Azure AD Domain Services (Azure AD DS) 概要 および デプロイについては、前回の投稿 で概ね整理できたので、今後は設計に関するテーマを取り扱いたいと思います。

さて、今回は Azure AD DS のパスワード ポリシーについて、”だれに“、”どのパスワード ポリシーが適用され“、”どうやってカスタマイズできるのか” の 3 つの観点でまとめました。

基本的には Microsoft の公開情報をもとにまとめておりますが、一部は検証ベースですので、本番環境の設計の参考に本記事を参照しているのであれば、念のためにお手元の環境でも十分に検証なさってくださいね。

登場人物

まず、”だれが” から考えていきましょう。マネージド ドメインに参加した VM にログオンするシナリオでは、下表のようにカテゴライズできます。

上表は、ユーザーが作成された場所、をもとにカテゴライズしています。
※ローカル ユーザーはマネージド ドメイン内のユーザーとは言えませんが、本記事ではユーザー種別の 1 つとして扱います。

Azure AD Domain Services ユーザー種別

それぞれのユーザーごとで、適用されるパスワード ポリシーは違いますので、次にそれを整理していきます。

Azure AD Domain Services パスワード ポリシー

まず、パスワード ポリシーとは、最小文字数、複雑さ、有効期限など…、ユーザー アカウントのパスワードに関する規定 (ポリシー) を意味します。

Azure AD DS では、Active Directory と同様に グループ ポリシー や 細かい設定が可能なパスワード ポリシー (FGPP : Fine-Grained Password Policy) によってパスワード ポリシーを管理します。

本章では、まずはそれぞれのシステムに適用されるパスワード ポリシーを確認しておきましょう。

Active Directory パスワード ポリシー

オンプレミス Active Directory のドメイン内で設定・適用可能なパスワード ポリシーで、グループ ポリシー や FGPP でパスワード ポリシーを管理します。

Azure AD Domain Services

▼ グループ ポリシー

[コンピューターの構成] – [Windows の設定] – [セキュリティの設定] – [アカウント ポリシー] 配下の [パスワード ポリシー] と [アカウント ロックアウトのポリシー] が、いわゆるパスワード ポリシーに該当します。

通常、グループ ポリシーは、オブジェクトが属する OU にリンクされた グループ ポリシー オブジェクト (Group Policy Object : GPO) の優先度を高く評価するため、親 OU などから継承された優先度の低い GPO の項目と競合が発生した場合、オーバーライドする動きがあります。

一方、[アカウント ポリシー] の項目はちょっと特殊で、ドメイン全体にリンクされたグループ ポリシーのみが適用されます。つまり、アカウント ポリシーを構成した GPO を OU にリンクしても、オーバライドされません。この考え方はマネージド ドメインで使用するグループ ポリシーでも同様です。

なお、既定では Default Domain Policy という名前の GPO にアカウント ポリシーが構成されており、これがドメイン全体にリンクされています。

アカウント ポリシー で設定可能なパスワードに関連するポリシーは以下の通りです。

▼ FGPP

Windows Server 2008 以降に実装されたもので、ドメイン内のユーザー、グループ単位でパスワード ポリシーが定義できます。それ以前は、前述の通りドメインにリンクした GPO のアカウント ポリシーのみが適用されるため、例えば「ユーザー A のパスワード ポリシーだけ緩和させたい」といった要件は実現できませんでした。

加えて、FGPP はグループ ポリシー (アカウント ポリシー) をオーバライドするため、適用されたユーザーには、FGPP に設定されたポリシーが適用されます。

Azure AD Domain Services

Azure AD パスワード ポリシー

クラウド ID (図中の緑ユーザー) に適用されるパスワード ポリシーです。オンプレミスのようにカスタムできる要素が少ないのが特徴です。

オンプレミスでは、GPO や FGPP でパスワード ポリシーをカスタム可能である一方、Azure AD そのような機能が提供されておらず、ごく一部の項目に対してのみカスタムできます。

なお、Azure AD Connect によってパスワード同期されたユーザーは、Active Directory のパスワード ポリシーが Azure AD のパスワード ポリシーをオーバライドするため、Azure AD のパスワード ポリシーが適用されません。(アカウント ロックアウトは適用されますが

つまり、同期されたパスワードが Azure AD のパスワード ポリシーを満たしていないからといって、エラーになったるすることはありません。このあたりの話については以下の公開情報が参考になります。

Azure AD Domain Services パスワード ポリシー

マネージド ドメイン内のユーザーに適用されるパスワード ポリシーです。Active Directory と同様に グループ ポリシーと FGPP で管理します。

Azure AD DS では、ドメイン全体に Group Policy Object (GPO) をリンクできない 且つ Default Domain Policy は ReadOnly な GPO である点が制約事項としてあります。

言い換えますと、既定で定義されたアカウント ポリシーを変更する方法がないため、パスワード ポリシーを変更するには、FGPP を構成する必要があります。

既定の FGPP (AADDSSTFPSO) も読み取り専用であるため、マネージド ドメイン ユーザーのパスワード ポリシーをカスタム定義する場合、既定の FGPP より高い優先度のものを作成、適用する必要があります。

Azure AD Domain Services

Azure AD から同期されたユーザー と マネージド ドメインに直接作成したユーザー で、パスワード ポリシーの挙動が異なる点は注意が必要です。

Azure AD から同期されたユーザは、パスワードが Azure AD から同期されるため、パスワード変更、リセットなどの運用は引き続き Azure AD で管理されます。このため、Azure AD の最小文字数、複雑さが適用されます。まとめる以下のような感じです。

Azure AD Domain Services

一方で、その他の項目については、Azure AD DS で定義されたポリシーが適用されます。

例えば、Azure AD DS のパスワード有効期限が 90 日に対して、Azure AD のパスワード有効期限が 120 日であるとします。前回パスワード変更時から 91 日経過しますと、Azure AD は引き続き現在のパスワードでサインインできますが、Azure AD DS では有効期限が切れているため、パスワードの変更 が求められ、結果的にマネージド ドメインのログオンに失敗します。

そのため、Azure AD より緩いロックアウト、有効期限 ポリシーを Azure AD DS に構成するようにしましょう。このあたりについては下記の公開情報でも言及しているので参考にしてください。

ローカル セキュリティ ポリシー ( ⊂ ローカル グループ ポリシー)

最後に、各 Windows マシン個別で設定が可能な ローカル のグループ ポリシーです。設定できる基本的なポリシーはグループ ポリシーと同等です。

グループ ポリシーのおさらいになりますが、ドメイン参加済み Windows にサインインする際に、まずローカル グループ ポリシーが適用されます。その次に、ドメインのグループ ポリシーが適用されます。この時、ローカル グループ ポリシーの内容と競合する設定項目がある場合、グループ ポリシーが強力なため、ローカル グループ ポリシーの設定をオーバーライドします。

何を伝えたいかというと、ドメイン参加済みのローカル ユーザーも、Default Domain Policy のアカウント ポリシーが適用されるという点です。

Default Domain Policy は ReadOnly のため変更できないため、パスワード ポリシーを設定したカスタム GPO を作成して、コンピューター オブジェクトが存在する OU にリンクしてあげる必要があります。

パスワード ポリシー まとめ

これまでの内容をまとめました。恐らくこのような感じになるかと思います。赤字の箇所は、Azure AD DS の グループ ポリシー および FGPP でカスタムできます。

パスワード ポリシーのカスタム

Azure AD DS のパスワード ポリシーをカスタマイズします。カスタマイズできるのは以下の二つです。

  1. FGPP
  2. Group Policy Object

ドメイン ユーザー

ドメイン ユーザーは、GPO (Default Domain Policy) と FGPP (AADDSSTFPSO) が既定のポリシーとして設定されています。

いずれも ReadOnly であるため、編集できない 且つ ドメイン全体に GPO をリンクすることもできない Azure AD DS では、AADDSSTFPSO より高い優先度の FGPP を作成、適用して既定値をオーバーライドする必要があります。詳細な手順は Microsoft の公開情報にありますので、こちらが参考になります。

Contoso Corp では、以下のカスタム FGPP を作成して、Domain Users グループに適用しました。

Custom FGPP

適用後、Azure AD DS に直接作成したユーザーにログオンし、パスワードの変更を試します。最小文字数を既定の 7 文字から 10 文字に変更したのですが、それが反映されていることが確認できました。

非ドメイン ユーザー

非ドメイン ユーザー、つまりドメイン参加済み VM のローカル ユーザーには、マネージド ドメインのグループ ポリシーが適用されます。既定では Default Domain Policy が適用されているため、カスタム GPO を作成して、OU にリンクすればオーバーライド可能です。

カスタム GPO の作成手順も公開情報にありますので、こちらが参考になります。

GPO が作成できましたら、適用する VM のコンピューター オブジェクトがある OU にリンクします。

グループ ポリシーが VM に反映されますと、ローカル ユーザーはカスタム GPO に定義したパスワード ポリシーが適用されます。

おわりに

いかがでしたでしょうか。 少し長くなりましたが、Azure AD DS では グループ ポリシー と FGPP でパスワード ポリシーがカスタムできますよー。という点が要点かな、と思います。

私がはじめて Azure AD DS を構築したとき、「え、だれに、何のポリシーが割り当たるの?」と、かなり悩んだのでまとめたものですので、本記事が少しでもお役経てば幸いです。

それでは、よい Azure AD ライフをっ♪

Pocket

あわせて読みたい

コメントを残す

メールアドレスが公開されることはありません。