SharePoint ワークフロー マネージャーの証明書生成キーをリセットする

SharePoint ワークフロー マネージャー (SPWFM) 証明書生成キーは、SPWFM ファームに参加するために必要な SharePoint ファームパスフレーズに似ています。 アップグレードや移行中など、既存の SPWFM ファームに参加すると、ワークフロー構成ウィザードによってプロンプトが表示されます。

最初にワークフロー ファームを構成するときにこのキーを文書化せず、そのキーが何であるかがわからない場合は、ワークフロー ファームを終了する前にリセットする必要があります。

重要

証明書生成キーをリセットすると、新しいワークフロー証明書と Service Bus 証明書も生成されます。 SharePoint サーバーがこれらの新しい証明書を信頼するように、追加の手順を実行する必要があります。 そうしないと、2013 プラットフォームのすべてのワークフローが失敗します。

キーをリセットする

次の PowerShell スクリプトを使用してキーをリセットできますが、まだワークフロー ファームに参加している SPWFM サーバーで実行する必要があります。 ワークフロー ファームに複数のノード/ホストがある場合は、他のノードをファームから離れ、残り 1 つだけでプロセスを簡略化することをお勧めします。

# Just provide the new certificate key here, for example P@ssWord1
# MAKE SURE YOU DOCUMENT THIS KEY SOMEWHERE SO YOU DON'T HAVE TO REPEAT THIS EXERCISE
$CertKey = convertto-securestring "[YourPassword]" -asplaintext -force

### You should NOT have to change anything below this line ###
# Set the key for WF
$WFdb = (get-wffarm).wffarmdbconnectionstring
Set-WFCertificateAutoGenerationKey  -WFFarmDBConnectionString $WFdb -key $CertKey -Verbose

# Force the Update on the WF side
Stop-WFHost
Update-WFHost -CertificateAutoGenerationKey $CertKey
"Starting Workflow Farm.  This could take a few minutes..."
Start-WFHost

# Set the key for SB
$SBdb = (get-sbfarm).SBFarmDBConnectionString 
Set-SBCertificateAutogenerationKey -SBFarmDBConnectionString $SBdb -key $CertKey  -Verbose

# Force the Update on the SB side
Stop-Sbfarm
Update-SBHost -CertificateAutoGenerationKey $CertKey
Write-host "Starting Service Bus Farm.  This could take a few minutes..."
Start-SBfarm

# Some steps you need to take on the SharePoint side
Write-host -ForegroundColor yellow "Exporting the new WF endpoint cert to the current directory.  You MUST install this cert on all SharePoint servers."
Write-host "$PWD\WFsslCert.cer"
Get-WFAutoGeneratedCA -CACertificateFileName WFsslCert.cer
Write-host -ForegroundColor yellow "AFTER you have installed $PWD\WFsslCert.cer on your SharePoint servers, you must also run the ""Refresh Trusted Security Token Services Metadata feed"" timer job on the SharePoint side to update the Workflow Outbound certificate."

SharePoint 側で新しい証明書を信頼する

前述のように、証明書生成キーをリセットすると、新しい証明書が生成されます。 これらは、SharePoint サーバーが信頼しない自己署名証明書です。 SharePoint サーバーが新しい証明書を信頼するようにするには、次の手順を実行する必要があります。

  1. すべての SharePoint サーバーで新しいワークフロー エンドポイント証明書を信頼します。 上記の PowerShell スクリプトによって、この証明書が "WFsslCert.cer" として現在のディレクトリにエクスポートされていることに気付いたかもしれません。 これは、SharePoint サーバーが信頼する必要がある 1 つです。 各 SharePoint サーバーにコピーし、信頼されたルート証明機関ストアにインストールします。 詳細な手順については、「ワークフロー マネージャー証明書を SharePoint にインストールする」を参照してください。

  2. 任意の SharePoint サーバーで RefreshMetadataFeed タイマー ジョブを実行して、SPTrustedSecurityTokenIssuer を更新します。 これを行うには、次の PowerShell を使用します。

    $tj = Get-SPTimerJob | ? {$_.name -match "RefreshMetadataFeed"} 
    Start-SPTimerJob $tj