こんにちは。日本マイクロソフトPremier Field Engineering部の古賀です。今回は、あまり知られていないけれども、知っておくと役に立つSQL Server 2012の機能強化点を紹介していきたいと思います。
1.セキュリティの機能強化
SQL Server 2012では、Windowsの管理者と、SQL Serverの管理者を明確に区別するためにBUILTIN\administratorsとLocal System (NT AUTHORITY\SYSTEM)は、自動的にsysadmin固定サーバー ロールへ割り当てられなくなりました。そのため、これらのアカウントがsysadmin固定サーバーロールに割り当てられることを前提としているアプリケーションでは、問題が発生する可能性がありますので注意が必要です。
また、この変更にあわせて、SQL Writerに関するセキュリティ モデルも変更されています。SQL Writerは、Local Systemアカウントの一部として動作する必要があるので、以前のバージョンのSQL Serverでは、Local SystemアカウントをSQL Serverのログインとして定義しておく必要がありました。さらに、このログインはsysadmin固定サーバー ロールのメンバシップである必要がありました。
しかし、SQL Server 2012では、前述のとおり、Local Systemアカウントのログインにsysadmin固定サーバー ロールが割り当てられていません。この問題に対応するため、SQL Server 2012では、[NT SERVICE\SQLWriter]という名前のログインを作成します。SQL Wrtierサービスは、SQL Serverへの接続が必要となったときに、このログインでSQL Serverに接続します。[NT SERVICE\SQLWriter]は、sysadminサーバー ロールの一部なので、Local Systemアカウントのログインにsysadminロールが割り当てられてなくてもSQL Writerは正常に動作するのです。
なお、Windowsの管理ツールからSQL Writerのサービス起動アカウントを確認すると、依然としてLocal Systemアカウントであることに気付かれるかもしれません。しかし、SQL Writerは、サービス SID*が有効化されてインストールされるので、NT SERVICE\SQLWriterというアカウントでSQL Serverへ接続できるのです。
この記事は参考になりましたか?
- あたらしいSQL Server/Denaliの世界連載記事一覧
- この記事の著者
-
古賀 啓一郎(コガ ケイイチロウ)
日本マイクロソフト株式会社勤務。きままなエンジニア。
謎があると解決せずにはいられない性格。
週末は家事に従事。※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア