SQL Server Integration Services Scale Out の証明書を管理する
適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム
Scale Out Master と Scale Out Worker の間の通信を守るために、SSIS Scale Out では 2 つの証明書が使用されます。マスターに 1 つ、ワーカーに 1 つです。
Scale Out Master 証明書
ほとんどの場合、Scale Out Master 証明書は、Scale Out Master のインストール時に構成されます。
SQL Server インストール ウィザードの [Integration Services Scale Out の構成 - マスター ノード] ページで、新しい自己署名 TLS/SSL 証明書を作成するか、既存の TLS/SSL 証明書を使用するかを選択できます。
新しい証明書。 証明書に対して特別な要件がない場合は、新しい自己署名 TLS/SSL 証明書の作成を選択できます。 さらに、証明書で CN を指定できます。 後で Scale Out Worker によって使用されるマスター エンドポイントのホスト名が CN に含まれていることを確認してください。 既定では、マスター ノードの IP アドレスとコンピューターの名前が含まれます。
既存の証明書。 既存の証明書を使用することを選択する場合は、 [参照] をクリックし、ローカル コンピューターのルート証明書ストアから TLS/SSL 証明書を選択します。
Scale Out Master 証明書の変更
証明書の有効期限などの理由により、Scale Out Master 証明書を変更する場合があります。 Scale Out Master 証明書を変更するには、次の作業を行います。
1.TLS/SSL 証明書を作成する
次のコマンドを使用して、新しい TLS/SSL 証明書を作成し、マスター ノードにインストールします。
MakeCert.exe -n CN={master endpoint host} SSISScaleOutMaster.cer -r -ss Root -sr LocalMachine -a sha1
次に例を示します。
MakeCert.exe -n CN=MasterMachine SSISScaleOutMaster.cer -r -ss Root -sr LocalMachine -a sha1
2.証明書をマスター ポートにバインドする
次のコマンドを使用して、元のバインドを確認します。
netsh http show sslcert ipport=0.0.0.0:{Master port}
次に例を示します。
netsh http show sslcert ipport=0.0.0.0:8391
次のコマンドを使用して、元のバインドを削除し、新しいバインドを設定します。
netsh http delete sslcert ipport=0.0.0.0:{Master port}
netsh http add sslcert ipport=0.0.0.0:{Master port} certhash={TLS/SSL Certificate Thumbprint} certstorename=Root appid={original appid}
次に例を示します。
netsh http delete sslcert ipport=0.0.0.0:8391
netsh http add sslcert ipport=0.0.0.0:8391 certhash=0011001100110011001100110011001100110011 certstorename=Root appid={11111111-2222-3333-4444-555555555555}
3.Scale Out Master サービス構成ファイルを更新する
マスター ノードで Scale Out Master サービス構成ファイル \<drive\>:\Program Files\Microsoft SQL Server\140\DTS\Binn\MasterSettings.config
を更新します。 SSLCertThumbprint を新しい TLS/SSL 証明書のサムプリントに更新します。
4.Scale Out Master サービスを再起動する
5.Scale Out Worker を Scale Out Master に再接続する
各 Scale Out Worker に対し、Worker を削除して Scale Out Manager を使用して再度追加するか、次の作業を行います。
a. ワーカー ノードのローカル コンピューターのルート ストアにクライアント TLS/SSL 証明書をインストールします。
b. Scale Out Worker サービス構成ファイルを更新します。
ワーカー ノードで Scale Out Worker サービス構成ファイル \<drive\>:\Program Files\Microsoft SQL Server\140\DTS\Binn\WorkerSettings.config
を更新します。 MasterHttpsCertThumbprint を新しい TLS/SSL 証明書のサムプリントに更新します。
c. Scale Out Worker サービスを再起動します。
Scale Out Worker 証明書
Scale Out Worker 証明書は、Scale Out Worker のインストール時に自動的に生成されます。
Scale Out Worker 証明書の変更
Scale Out Worker 証明書を変更する場合、次の作業を行います。
1.証明書を作成する
次のコマンドを使用して、証明書を作成してインストールします。
MakeCert.exe -n CN={worker machine name};CN={worker machine ip} SSISScaleOutWorker.cer -r -ss My -sr LocalMachine
次に例を示します。
MakeCert.exe -n CN=WorkerMachine;CN=10.0.2.8 SSISScaleOutWorker.cer -r -ss My -sr LocalMachine
2.ワーカー ノードのローカル コンピューターのルート ストアにクライアント証明書をインストールする
3.証明書にサービスのアクセス権を付与する
次のコマンドを使用して、古い証明書を削除して、新しい証明書に Scale Out Worker サービスのアクセス権を付与します。
certmgr.exe /del /c /s /r localmachine My /n {CN of the old certificate}
winhttpcertcfg.exe -g -c LOCAL_MACHINE\My -s {CN of the new certificate} -a {the account running Scale Out Worker service}
次に例を示します。
certmgr.exe /del /c /s /r localmachine My /n WorkerMachine
winhttpcertcfg.exe -g -c LOCAL_MACHINE\My -s WorkerMachine -a SSISScaleOutWorker140
4.Scale Out Worker サービス構成ファイルを更新する
ワーカー ノードで Scale Out Worker サービス構成ファイル \<drive\>:\Program Files\Microsoft SQL Server\140\DTS\Binn\WorkerSettings.config
を更新します。 WorkerHttpsCertThumbprint を新しい証明書のサムプリントに更新します。
5.マスター ノードのローカル コンピューターのルート ストアにクライアント証明書をインストールする
6.Scale Out Worker サービスを再起動する
次のステップ
詳細については、次の記事を参照してください。