SQL Server 2000 の SQL Enterprise Manager または SQL Server 2005 の SQL Server 構成マネージャを使用せずに SQL Server または SQL Server エージェント サービスのアカウントを変更する方法

文書翻訳 文書翻訳
文書番号: 283811 - 対象製品
この記事は、以前は次の ID で公開されていました: JP283811
すべて展開する | すべて折りたたむ

目次

概要

Microsoft Windows NT アカウントで実行するように Microsoft SQL Server をインストールした場合、SQL Server により、特定のファイル、フォルダ、およびレジストリ キーに対するさまざまな Windows ユーザー権利とアクセス許可がその Windows NT アカウントに設定されます。SQL Server Enterprise Manager (SEM) または SQL Server 構成マネージャ (SSCM) を使用して SQL Server (MSSQLServer サービス) と SQL Server エージェント サービスの起動アカウントを後から変更すると、SEM により、必要なすべてのアクセス許可と Windows ユーザー権利が自動的にその新しい起動アカウントに割り当てられるため、ユーザーは何も行う必要はありません。サービス アカウントを変更するときは、SEM または SSCM を使用することをお勧めします。

: SQL Server Enterprise Manager でこの機能を使用するには、リモート サーバーに対する管理者権限が必要です。

ただし、コントロール パネルまたは管理ツールの [サービス] アドインを使用して MSSQLServer サービスまたは SQL Server エージェント サービスの起動アカウント情報を変更する場合は、設定する必要があるアクセス許可とユーザー権利が他にもあります。

この資料では、[サービス] アドインを使用して起動アカウント情報を変更するときに必要な手順について説明します。

続行する前に、マイクロソフト Web サイトの「サポート技術情報」 (Microsoft Knowledge Base) の次の資料を参照してください。
マイクロソフト セキュリティ情報 MS02-038
http://www.microsoft.com/japan/technet/security/bulletin/MS02-038.mspx

マイクロソフト セキュリティ情報 MS02-034
http://www.microsoft.com/japan/technet/security/bulletin/MS02-034.mspx
322853 [FIX] SQL Server によって不要な権限が与えられる、または暗号化機能に未チェックのバッファが含まれている
316333 SQL Server 2000 Service Pack 2 のセキュリティ更新プログラム
: MS02-034 と MS02-038 を適用することで、既存の管理者権限の昇格に関する脆弱性が排除され、将来の脆弱性も防止できます。

SQL Enterprise Manager または SQL Server Management Studio を使用せずに [サービス] アドインを使用して SQL Server または SQL Server エージェント サービスのアカウントを変更する方法

SEM または SSCM ではなく [サービス] アドインを使用して SQL Server サービス アカウントまたは SQL Server エージェント サービス アカウントを変更する場合は、特定のレジストリ、NTFS ファイル システム アクセス許可、および Microsoft Windows ユーザー権利を設定する必要があります。SQL Server Desktop Engine (MSDE 2000) または SQL Server 2005 Express Edition がインストールされている場合は、アクセス許可の変更に SEM または SSCM を使用できないため、特にこの状況に該当します。設定が必要な 3 つの項目を次に示します。
  • レジストリ キー
  • ディスクに対する NTFS ファイル システムのアクセス許可
  • Windows ユーザー権利
以下、各項目について個別に説明します。

レジストリ キー

次の一覧にあるレジストリ キーで MSSQLServer サービスまたは SQLServerAgent サービスの起動アカウント (ローカルの Microsoft Windows NT アカウントまたはドメインの Windows NT アカウント) に "フル コントロール" を設定します。次のハイブでは、この一覧のキーにアクセス制御リスト (ACL) が設定されます (クラスタの場合は、クラスタ内の各ノードでこの手順を実行します)。

次のキーとすべての子キーに "フル コントロール" アクセス許可を設定します。
  • 名前付きインスタンスの場合
    HKEY_LOCAL_MACHINE\Software\Clients\Mail

    HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80

    HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instancename>
  • 既定のインスタンスの場合
    HKEY_LOCAL_MACHINE\Software\Clients\Mail

    HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Cluster

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\MSSQLServer

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Providers

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Replication

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\SQLServerAgent

    HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Tracking

SQL Server 2005 を使用している場合

名前付きインスタンスまたはデフォルトのインスタンスの場合は、以下のキーとすべての子キーに "フル コントロール" アクセス許可を適用します。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<MSSQL.x>
: このレジストリ サブキーで、<MSSQL.x> はシステムの対応する値のプレースホルダです。システムの対応する値は、次のレジストリ サブキーのインスタンス名として名前が付けられているレジストリ エントリの値から確認できます。デフォルトのインスタンスの場合、インスタンス名は MSSQLSERVER です。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\

ディスクに対する NTFS ファイル システムのアクセス許可

次の NTFS フォルダに対して MSSQLServer サービスと SQLServerAgent サービスの起動アカウント (ローカルの Windows NT アカウントまたはドメインの Windows NT アカウント) に "フル コントロール" を設定します。クラスタの場合には、各コンピュータ ノードの対応するパスも変更する必要があります。

名前付きインスタンスに対する例は次のとおりです。
D:\Program Files\Microsoft SQL Server\MSSQL$_instancename_\
既定のインスタンスに対する例は次のとおりです。
D:\Program Files\Microsoft SQL Server\MSSQL\
サブフォルダとファイルに対しても同様のアクセス許可を設定する必要があります。

SQL Server 2005 を使用している場合

対応するフォルダは、次のとおりです。

Drive:\Program Files\Microsoft SQL Server\<MSSQL.1>\MSSQL

Windows ユーザー権利

通常、オペレーティング システムのデフォルトのインストールでは、SQL Server が正常に機能するために必要なすべてのユーザー権利がローカル Administrators グループに与えられます。このため、ローカル Administrators グループに追加されているローカルの Windows NT アカウントまたはドメイン アカウントには、SQL Server サービスの起動アカウントとして使用するために必要なすべてのユーザー権利が与えられています。ただし、そのような高度なユーザー権利で SQL Server を実行することはお勧めしません。

SQL Server 2005 で、SQL Server または SQL Server エージェントの起動アカウントをローカル Administrators グループのメンバにしない場合は、SQL Server 2005 Books Online の「Windows サービス アカウントの設定」の「SQL Server サービス アカウントに付与された Windows NT の権限の確認」を参照してください。

SQL Server 2000 で、SQL Server または SQL Server エージェントの起動アカウントをローカル Administrators グループのメンバにしない場合は、MSSQLServer サービスと SQLServerAgent サービスの起動アカウント (ローカルの Windows NT アカウントまたはドメインの Windows NT アカウント) に次のユーザー権利 (またはポリシー) を設定する必要があります。
  • オペレーティング システムの一部として機能 : SeTcbPrivilege
  • 走査チェックのバイパス : SeChangeNotify
  • メモリ内のページのロック : SeLockMemory
  • バッチ ジョブとしてログオン : SeBatchLogonRight
  • サービスとしてログオン : SeServiceLogonRight
  • プロセス レベル トークンの置き換え : SeAssignPrimaryTokenPrivilege
: プログラミングしやすくするために、Microsoft Windows NT ユーザー権利名をユーザー権利の正式名称の横に記載しています。

その他の手順

: コンピュータでのデフォルトの NTFS ファイル システムのアクセス許可が変更されている場合は、SQL Server の起動アカウントに、SQL Server データベースのデータとログ ファイルが配置されているルート ドライブに対する "フォルダの一覧" アクセス許可が与えられていることを確認してください。

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
239759 データベースの作成時にエラー 5177 が出力される

MSSQLServer サービスを開始するために使用されるアカウントが次の 2 つのアカウントのいずれかである場合は、MSSQLServer サービスと SQLServerAgent サービスのいずれかまたは両方の起動アカウントを SQL Server の sysadmin ロールに追加し、Domain\NTaccount ユーザーに SQL Server へのログオンを許可する必要があります。
  • コンピュータのローカル Administrators グループのメンバではない場合
  • BUILTIN\Administrators SQL Server ログインが削除されている場合
以下に例を示します。
EXEC sp_grantlogin [Example\test]
次に、そのアカウントを sysadmin ロールに追加します。
EXEC sp_addsrvrolemember @loginame = [Example\test] 
   , @rolename =  'sysadmin'

SQL Server をフルテキスト検索またはクラスタリングと共に使用している場合、SEM を使用せずに SQL Server の起動アカウントを変更すると、さまざまな問題が発生することがあります。

フルテキスト検索またはクラスタリングに関する問題が発生した場合、その詳細については、この資料の「関連情報」を参照してください。

SQL Server 2000 および Microsoft Windows 2000 環境で Kerberos SSPI (セキュリティ サポート プロバイダ インターフェイス) 認証を使用している場合、古い SPN (サービス プリンシパル名) を削除し、新しいアカウント情報を使用して新しい SPN を作成する必要があります。この作業に SETSPN を使用する詳細については、SQL Server 2000 Books Online の「セキュリティ アカウントの委任」を参照してください。

関連情報

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
317746 SQL Server フルテキスト検索でカタログが生成されない
317232 クラスタ サービス アカウントのパスワードを変更すると Event ID 1107 および 1079 メッセージが発生する
295051 [FIX] フルテキスト検索のアカウントを変更すると、カタログが使用できない
254321 クラスタ化された SQL Server に関する推奨事項と注意事項および基本的な警告
239885 クラスタ化された SQL Server コンピュータのサービス アカウントを変更する方法
219264 [INF] SQL Server 7.0 クラスタリング セットアップのインストール手順
198168 [SQL]BUG: SQL クラスタ使用時にアカウント情報を変更することの問題
詳細については、次のマイクロソフト Web サイトを参照してください。
http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/sqlc2.mspx

プロパティ

文書番号: 283811 - 最終更新日: 2011年5月15日 - リビジョン: 11.0
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
キーワード:?
kbsqlmanagementtools kbinfo kbsql2005cluster kbhowtomaster KB283811
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com