AWS Managed Microsoft ADでグループ管理サービスアカウント(gMSA)を作成する
しばたです。
小ネタなのですが軽くハマったので本記事で共有します。
グループ管理サービスアカウント(gMSA)
Windows Server 2012のActive Directoryから導入された新機能の一つにグループ管理サービスアカウント(Group Managed Service Accounts(gMSA))があり、ドメイン内の特定のサーバーでのみ利用可能なサービスアカウントになります。
細かい話は以下のドキュメントやブログをご覧ください。
で、このグループ管理サービスアカウントを利用するには
- (初期設定のみ) KDSルートキーの作成
- グループ管理サービスアカウントの追加
という手順を踏む必要があります。
Microsoft ADにおけるグループ管理サービスアカウント
AWS Managed Microsoft AD(以後Microsoft AD)でもグループ管理サービスアカウントはサポートされており、AWS Delegated Managed Service Account Administrators
グループのメンバーであればアカウントを作成可能です。
初期状態でこのグループにはAWS Delegated Administrators
が所属しており、最初に提供されるAdmin
管理者ユーザーが該当します。
Microsoft ADでグループ管理サービスアカウントを作成する
本記事では適当な環境に作成したcorp.contoso.com
ドメイン環境でAdmin
ユーザーで作業しています。
最初にKDSルートキーを作成しようとしたのですが、次の様にCOMエラーとなってしまいました。
# KDSルートキーを作成しようとするとエラーになる
Add-KdsRootKey -EffectiveTime ((Get-Date).addhours(-10))
Add-KdsRootKey : この要求はサポートされていません。 (HRESULT からの例外:0x80070032)
発生場所 行:1 文字:1
+ Add-KdsRootKey -EffectiveTime ((Get-Date).addhours(-10))
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Add-KdsRootKey], COMException
+ FullyQualifiedErrorId : この要求はサポートされていません。 (HRESULT からの例外:0x80070032),Microsoft.KeyDistributionService.Cmdlets.AddKdsRootKeyCommand
Get-KdsRootKey
を実行しても既存のキーは無さそうに見えました。
# Get-KdsRootKeyコマンドでは既存のキーが見つからない
Get-KdsRootKey
ただ、ここがちょっとハマったポイントで、Microsoft ADではコマンドレットから見ることができないものの初期状態でKDSルートキーが作成済みでした。
ADSIエディターから確認すると下図の様にキーが存在しています。
このためMicrosoft ADでグループ管理サービスアカウント(gMSA)を作成する際はいきなりNew-ADServiceAccountコマンドレットを実行して構いません。
# いきなりNew-ADServiceAccountコマンドレットを実行してOK
New-ADServiceAccount -Name <サービスアカウント名> –DNSHostName <利用サーバー名>
エラー無くコマンドレットが終了し、グループ管理サービスアカウントがきちんと作成されました。