nscontrol register コマンド
更新 : 2005 年 12 月 5 日
Notification Services のインスタンスに関するレジストリ エントリの作成や更新、およびインスタンスのパフォーマンス カウンタの作成を行います。またオプションで、インスタンスを実行する Microsoft Windows サービスも作成できます。
構文
nscontrol register
[-nologo]
[-help]
-name instanceName
[-server databaseServer]
[-service
[-serviceusername NSServiceUserName [-servicepassword NSServicePwd]
[-sqlusername NSServiceSqlUserName -sqlpassword NSServiceSqlPwd]
[-argumentkey key]]
引数
- -nologo
nscontrol コマンドを実行するときに、製品とバージョンについてのメッセージを表示しないようにします。
- -help
コマンドの構文を表示します。
- -nameinstanceName
登録するインスタンスの名前を指定します。
- -serverdatabaseServer
インスタンス データベースをホストするサーバーの名前を指定します。SQL Server の名前付きインスタンスを使用してインスタンス データベースをホストする場合、<servername>\<instancename> 形式を使用してサーバー名とインスタンス名を指定する必要があります。データベース サーバー名を指定しない場合、nscontrol register では、ローカル サーバー名が使用されます。
-service
サーバー上の Notification Services のインスタンスを制御する NS$instance_name Windows サービスを作成します。通常、ホストされたイベント プロバイダ、ジェネレータ、またはディストリビュータを実行するすべてのサーバーでは、-server 引数を使用します。サブスクリプションの管理インターフェイス、ホストされていないイベント プロバイダ、または管理アプリケーションのみを実行するサーバーでは、この引数を使用する必要はありません。
独自のアプリケーションで Notification Services エンジンをホストしている場合は、-service 引数を使用しないでください。エンジンのホスティングの詳細については、「Notification Services エンジンのホスト」を参照してください。
-serviceusernameNSServiceUserName
Windows サービスがローカル リソースおよびリモート リソースへアクセスするために使用する Windows アカウントを指定します。Windows 認証を使用する場合、Windows サービスはこのアカウントを使用して SQL Server にログインし、インスタンスおよびアプリケーション データベースにアクセスします。ローカル アカウントおよびドメイン アカウントでは、この引数と -servicepassword 引数を共に使用する必要があります。NetworkService のような組み込みアカウントには、パスワードはありません。
Microsoft Windows XP では、-serviceusername と -servicepassword が指定されていない場合は、既定のアカウント NTAUTHORITY\NetworkService が使用されます。他のオペレーティング システムでは、-serviceusername と -servicepassword は必須です。
メモ : セキュリティ上の理由から、サービス アカウントは管理者や LocalSystem サービス アカウントとしてではなく、最小限の権限で実行するようにしてください。詳細については、「Notification Services のインスタンスの Windows アカウントの構成」を参照してください。 Windows 認証を使用している場合は、このアカウントには、インスタンスとアプリケーション データベースにアクセスできる権限が与えられている必要があります。詳細については、「Notification Services のインスタンスの SQL Server 権限の構成」を参照してください。
- -servicepasswordNSServicePwd
-serviceusername に対応するパスワードを指定します。この引数は、-serviceusername 引数と共に使用する必要があります。
-sqlusernameNSServiceSqlUserName
NS$<instance_name> Windows サービスが SQL Server に接続するために使用する SQL Server ログインを指定します。SQL Server 認証を使用して SQL Server に接続している場合、-sqlusername と -sqlpassword の両方の引数を指定する必要があります。
Windows 認証を使用している場合は、-sqlusername 引数と -sqlpassword 引数は指定しないでください。
メモ : サービスに SQL Server ユーザー名とパスワードを割り当てると、この情報は暗号化され、レジストリに格納されます。この情報を格納しないようにするには、代わりに Windows 認証を使用します。
- -sqlpasswordNSServiceSqlPwd
‑sqlusername ログインに関連付けられているパスワードを指定します。この引数は、-sqlusername 引数と共に使用する必要があります。
-argumentkeykey
Notification Services データベースに格納される配信チャネル引数とイベント プロバイダ引数を暗号化するための値を指定します。キーは、-service 引数が指定された場合にだけ使用され、それ以外の場合には無視されます。暗号キーを使用してインスタンスを登録する場合は、インスタンスの作成時および更新時と同じキーを使用する必要があります。このためには、構成ファイルの EncryptArguments の値が true であることが必要です。
キーは最大 2,500 文字の文字列です。nscontrol register によって、キー値が暗号化され、レジストリに格納されます。このキーは、NS$instance_name Windows サービスが、暗号化された引数を読み取る場合に必要になります。
nscontrol create または SQL Server Management Studio の [新しい Notification Services インスタンス] コマンドを使ってインスタンスを生成した後は、キーを変更することはできません。
解説
nscontrol register コマンドはローカルで実行する必要があります。リモート サーバーには Notification Services を登録できません。
SQL Server 認証を使用して SQL Server に接続する場合、およびサービスで使用する SQL Server のユーザー名またはパスワードを更新する必要がある場合は、nscontrol register、または SQL Server Management Studio にある Notification Services の [登録] ダイアログ ボックスを使用して、ログイン情報を変更する必要があります。Notification Services ではユーザー名とパスワードが暗号化され、これらは、管理者と Windows サービスだけがアクセスするレジストリに格納されます。
-argumentkey を使用して暗号キーの値を指定すると、nscontrol register コマンドにより、そのキーが暗号化され、レジストリに格納されます。このキーはセキュリティで保護されているので、ローカルの Administrators グループのメンバと NS$instance_name サービスを実行するアカウントだけがそのキーを読み取ることができます。
権限
nscontrol register の実行に使用するアカウントには、Notification Services バイナリ ファイルを実行するための権限も必要です。この権限は、Windows の Administrators グループおよび SQLServerNotificationServicesUser グループのメンバに与えられます。Windows サービスおよびパフォーマンス カウンタを作成する場合、アカウントは Administrators グループのメンバである必要があります。
Notification Services 用の NS$instance_name Windows サービスに必要な権限の詳細については、「Notification Services のセキュリティの設定」を参照してください。
例
次の例は、インスタンスを登録する 3 つの異なる方法を示しています。
A. インスタンスを登録し、Windows サービスを作成する
次の例では、Windows 認証を使用して SQL Server に接続し、StockInstance
という名のインスタンスを登録します。次の引数を使ってインスタンスを登録すると、インスタンスの Windows サービスが作成され、Windows サービスで使用されるユーザー名とパスワードが定義されます。このユーザー名とパスワードによって、SQL Server へのアクセス、Windows リソースの起動、および Windows リソースへのアクセスが可能になります。また、データベースをホストする SQL Server インスタンス名も指定されています。
nscontrol register -name StockInstance -server nsuetest -service
-serviceusername SvcAcct -servicepassword svC-P@sWd
B. Windows サービスを作成せずにインスタンスを登録する
次の例では、シナリオに基づいて StockInstance
という名のインスタンスを登録します。
- サブスクリプションの管理インターフェイス、または独立イベント プロバイダはサーバー上にありますが、サーバーはホストされたイベント プロバイダ、ジェネレータ、およびディストリビュータを実行しません。
- ホストされたイベント プロバイダ、ジェネレータ、およびディストリビュータを実行する Notification Services エンジンは、カスタム アプリケーションでホストされます。そのため Windows サービスは必要ありません。
このシナリオでは、インスタンスのコンポーネントがデータベースを探せるようにインスタンスを登録する必要がありますが、-server
引数による Windows サービスの作成は行いません。
また、この例を使って、既存のレジストリ エントリにあるデータベース サーバー名を更新することもできます。
nscontrol register -name StockInstance -server nsuetest
C. SQL Server 認証
重要 : |
---|
可能な場合は、Windows 認証を使用します。 |
次の例では、Notification Services のインスタンスの登録、および Windows サービスの作成を行います。また、サービスが SQL Server に接続するための SQL Server 認証を指定します。サービスは、SQL Server アカウントとパスワード、および Windows アカウントとパスワードの両方を必要とすることに注意してください。サービスは、データベース以外のリソースに対する起動やアクセスを行う場合に Windows 権限を使用し、データベースにアクセスする場合に SQL Server アカウントを使用します。
nscontrol register -name StockInstance -server nsuetest -service
-serviceusername SvcAcct -servicepassword svC-P@sWd
-sqlusername SqlUser -sqlpassword sQl-P@sWd
参照
関連項目
その他の技術情報
Notification Services のインスタンスの配置
レジストリ情報の更新
EncryptArguments 要素 (ICF)
Notification Services エンジンのホスト
ヘルプおよび情報
変更履歴
リリース | 履歴 |
---|---|
2005 年 12 月 5 日 |
|