---
title: "アップグレード・アイデンティティ・サーバー"
slug: "upgrade-identity-server"
abstract: ""
---
# アップグレード・アイデンティティ・サーバー

## SQL Serverとの暗号化通信

> !注8.x以前のIdentity Serverバージョンからのアップグレードにのみ適用されます。

バージョン8.0以降、Sitecore Identity ServerはデフォルトでSQL Serverとの暗号化通信を義務付けています。この変更は、[Microsoftの「EF Core 7.0のBreaking changes](https://learn.microsoft.com/en-us/ef/core/what-is-new/ef-core-7.0/breaking-changes?tabs=data-annotations%2Cv7#encrypt-true)」記事で説明されているように、より厳格なセキュリティ対策を強制する新しいバージョンのMicrosoft.Data.SqlClientを採用したことによるものです。

Sitecore Identity Serverをインストールするか、最新バージョンにアップグレードする前に、以下の手順を必ず完了させてください。

1.  SQL Server用の暗号化証明書を設定する:暗号化通信をサポートするために有効な暗号化証明書をSQL Serverにインストール・設定する必要があります。詳細については、Microsoftの「 [接続暗号化のためのSQL Serverデータベースエンジンの設定](https://learn.microsoft.com/en-us/sql/database-engine/configure-windows/configure-sql-server-encryption?view=sql-server-ver16) 」記事を参照してください。
    
2.  証明書がSitecore Identity Serverをホストしているサーバーで信頼されていることを確認してください
    
3.  オプションSitecore Identity ServerにSQL Serverへの暗号化接続を強制します。Sitecore Identity Serverのセキュリティデータベースの接続文字列を更新し、以下のパラメータを追加してください:
    
    Encrypt=true;TrustServerCertificate=false;
    
    例えば:
    
    <ConnectionString>Data Source=.;Initial Catalog=Sitecore.Core;User ID=coreuser;Password=Test12345;Encrypt=true;TrustServerCertificate=false;</ConnectionString>
    
    この構成により、SQL Serverとの暗号化通信が保証されつつ、厳格な証明書検証が強制されます。
    

### 代替構成:SQL Server生成の自己署名証明書

非本番環境でのインストールプロセスを簡素化するために、SQL Serverの暗号化証明書の設定を省略できます。証明書が明示的に設定されていない場合、SQL Serverは起動時に自動的に自己署名証明書(フォールバック証明書)を生成し、それを暗号化に使用します。 **この方法は本番環境には推奨されません。**

この構成をSitecore Identity Serverで対応させるには、以下のいずれかの方法を選択してください。

1.  暗号化を無効にするには、セキュリティデータベースの接続文字列を以下のように更新してください:
    
    ...;Encrypt=false;
    
2.  暗号化を有効にしますが、証明書の信頼検証は無効にします。セキュリティデータベースの接続文字列を以下のように更新します:
    
    ...;Encrypt=true;TrustServerCertificate=true;
    

## データベースのアップグレード

最新バージョンのSitecore Identity Serverをインストールする前に、セキュリティデータベースをアップグレードしてください。

セキュリティデータベースのアップグレード:

1.  Sitecore.IdentityServer.UpgradeScripts.9.0.zipファイルを解凍してください。
2.  セキュリティデータベースで CMS\_security\_IdentityServer.sql スクリプトを実行してください。

データベースアップグレードスクリプトはセキュリティデータベースに適用された変更を含みます。このスクリプトは、依存するソフトウェアの新しいバージョンをサポートするためにテーブルを修正します。

> !注このステップは、既存のSitecore XP展開でIdentity Serverをアップグレードする場合に適用されます。また、Sitecore XPとIdentity Serverの新規インストールにも適用される場合があります。例えば、Sitecore XP 10.3.0または10.5.0の新規インストールには、デフォルトで古いIdentity Serverバージョンのインストールがバンドルされており、Identity Server 9.0のセキュリティデータベースのアップグレードが必要です。
> 
> Sitecore XP 10.3.3および10.4.1以降、Identity Server 9.0はSitecore XPインストール時にデフォルトでインストールされます。

## Sitecore Identity Serverをインストール

Sitecore Identity Serverをインストールするには:

1.  例えばフォルダを作成します。例えばc:\\resourcefiles。
    
2.  IdentityServer Deployment Configuration 9.0.zipファイルを解凍し、解凍したファイルをc:\\resourcefilesフォルダにコピーします。
    
3.  Sitecore.IdentityServer.9.0.X.scwdp.zipファイルをc:\\resourcefilesフォルダにコピーしてください。
    
    フォルダーには以下の項目が含まれているはずです。
    
    -   createcert.json
    -   IdentityServer.json
    -   Install-IdentityServer.ps1
    -   Sitecore.IdentityServer.9.0.X.scwdp.zip
4.  Sitecoreライセンスファイルのコピーをc:\\resourcefilesフォルダに保存してくださいlicense.xml。
    
5.  Install-IdentityServer.ps1ファイルを編集し、以下のパラメータを更新してください:
    
    -   $prefix - 任意。CMインスタンス名を使用し、アイデンティティサーバーのURLに使われます。
    -   $CMurl - 任意です。デフォルト値を更新するかそのままにしてください。
    -   $IdentityServer - アイデンティティサーバーのデフォルト値であるURLを更新またはそのままにします。
    -   $ClientSecret\- CMインスタンスの…\\App\_Config\\ConnectionStrings.configファイルで使うsitecoreidentity.secretキーと同じでなければなりません。
    -   $SqlServer - SQLサーバーの名前。
    -   $SqlAdminUser - SQLサーバー管理者の名前。
    -   $SqlAdminPassword - SQLサーバー管理者パスワード。
    -   $PSScriptRoot - オプションです。別の名前のフォルダを使う場合はこのパラメータを更新してください。デフォルト値 = c:\\resourcefiles
    -   $SitePhysicalRoot - オプションです。別の名前のフォルダを使う場合はこのパラメータを更新してください。デフォルト値 = C:\\inetpub\\wwwroot
    -   $wdpFileName - オプションです。デフォルト値を使いましょう。デフォルト値 = Sitecore.IdentityServer.\*.scwdp.zip
6.  管理者としてPowerShellを開き、c:\\resourcefilesフォルダに行き、以下のコマンドレットを実行してください。
    
    .\\Install-IdentityServer.ps1