Windows Server 2012 以降で、グループの管理されたサービスアカウント (gMSA : Group Managed Service Accounts) を使用することができるようになりました。
使ったことがなかったので、SQL Server のサービスアカウントとして使う方法をまとめてみたいと思います。
TechNet としては、
グループの管理されたサービス アカウントの概要
管理されたサービス アカウントの新機能
Getting Started with Group Managed Service Accounts
他の方が検証された内容としては、
グループ管理サービスアカウント (Always on the clock)
ADFSのクレームにSQL Serverデータベースを使う方法 (Always on the clock)
Windows Server 2012以降の“グループの”管理されたサービスアカウント(gMSAs)について (山市良のえぬなんとかわーるど)
が参考になります。
最初に Create the Key Distribution Services KDS Root Key に記載されている KDS のルートキーの作成を [Add-KdsRootKey] で行います。
ルートキーを作成していない状態ですと、gMSA のアカウントを作成する際に、[New-ADServiceAccount : キーがありません。] というエラーが発生し、コマンドレットを実行することができません。
Add-KdsRootKey -EffectiveTime ((get-date).addhours(-10))
作成した KDS ルートキーは [Get-KdsRootKey] で確認することができます。
作成した KDS ルートキーは [cn=Master Root Keys,cn=Group Key Distribution Service,cn=Services,CN=Configuration,DC=AlwaysOn,DC=local] というように構成パーティション上に作成されるようです。
KDR ルートーキーが作成できたら [New-ADServiceAccount] で管理されたサービスアカウントを作成します。
New-ADServiceAccount -Name MSSQL-gMSA -DNSHostName MSSQL-gMSA.alwayson.local
作成をすると、[Managed Service Accounts] のコンテナ内にアカウントが作成されます。
アカウントの作成が終了したら、[Set-ADServiceAccount] でアカウントを使用するホストを指定します。
Set-ADServiceAccount -Identity MSSQL-gMSA -PrincipalsAllowedToRetrieveManagedPassword SQLTEST$
上記のコマンドレットでは [msDS-GroupMSAMembership] を設定しているようです。
アカウントの設定が完了したら、[Add-ADComputerServiceAccount] を実行して、コンピューターサービスアカウントを設定します。
Add-ADComputerServiceAccount -Identity SQLTEST -ServiceAccount MSSQL-gMSA
設定をすると、コンピューターアカウントの [msDS-HostServiceAccount] に設定した gMSA が追加されるようです。
最後に SQL Server をインストールする端末にログオンし、[Install-ADServiceAccount]
を実行します。
# コマンドはドメインユーザーで実行する必要があります。
このコマンドレットを実行するためには、[Windows PowerShell の Active Directory モジュール] をインストールしておく必要があります。
Install-ADServiceAccount -Identity MSSQL-gMSA
ここまでの作業が完了すると SQL Server のインストール時に gMSA が指定できるようになります。
設定ができていない場合は以下のメッセージが表示され、gMSA を指定することができません。
また、SQL Server のインストールをドメインユーザーで実行しないとエラーになってしまいそうでしたので、セットアップを実行するユーザーについても気を付けたほうがよいかと思います。
きちんと調べた訳ではないのですが、gMSAをSQL Server 2012のサービスアカウントにする構成はサポートされない構成だったかと思います。
Yoshihiro Matsumoto
14 2月 14 at 15:23
コメントありがとうございます。
7 / 2008 R2 では、MSA がサポートされている旨の記述があったのですが、gMSA はどうなのでしょう??
時間のある時に調べてみたいと思います。
Masayuki.Ozawa
14 2月 14 at 15:37
こんなブログポストが出てきました。
http://blogs.msdn.com/b/sqlosteam/archive/2014/02/19/msa-accounts-used-with-sql.aspx
Yoshihiro Matsumoto
20 2月 14 at 19:26
MSAとgMSAでポリシーが、ちがうのですね。
情報ありがとうございます。後程追記させていただきます。
Masayuki.Ozawa
20 2月 14 at 19:31