---
title: "ウォークスルー:Windows Key Storeを用いたSitecore Cortex ProcessingデータベースのAlways Encrypted設定"
slug: "walkthrough--configuring-always-encrypted-for-the-sitecore-cortex-processing-databases-using-windows-key-store"
abstract: "Windows Key Storeを使ってSitecore Cortex™ Processingデータベース向けにAlways Encryptedを設定する方法。"
---
# ウォークスルー:Windows Key Storeを用いたSitecore Cortex ProcessingデータベースのAlways Encrypted設定

適用対象

Sitecore Cortex™処理ストレージデータベース、Sitecore Cortex処理タスクデータベース

Sitecoreインストールフレームワーク

「常に暗号化」はデフォルトで有効 **になっていません** 。

Sitecore Azureツールキット

「常に暗号化」はデフォルトで有効 **になっていません** 。

Sitecore Cortex処理タスクデータベースおよびSitecore Cortex処理ストレージデータベースは、機密データを含む列に対してAlways Encrypted機能をサポートしています。Windows Key Storeを使って既存データベースに対してAlways Encryptedを有効にすることができます。

このウォークスルーでは、以下の作業の実行方法を説明します。

-   キーを作成する
-   Sitecore Cortex処理の役割を設定する
-   タスクとストレージデータベースで常に暗号化を設定してください

## キーを作成する

カラムマスターキー(CMK)およびカラム暗号化キー(CEK)の作成および使用に関する情報は、Microsoftの[Always Encryptedドキュメント](https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/always-encrypted-database-engine?view=sql-server-ver15) を参照してください。全体の手順は以下の通りです:

-   [カラムマスターキー(CMK)とカラム暗号化キー(CEK)を作成します。](https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/create-and-store-column-master-keys-always-encrypted?view=sql-server-2017)
    
-   [CMKをエクスポートし、データベースに接続するロールの適切な証明書ストアにインポート](https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/configure-always-encrypted-using-sql-server-management-studio?view=sql-server-2017) します。
    
-   各ロールのユーザーが[CMKにアクセスする権限](https://docs.secureauth.com/display/KBA/Grant+Permission+to+Use+Signing+Certificate+Private+Key)を持っていることを確認してください。ローカルマシン証明書ストアを使用している場合、各ロールユーザーは読み取り権限が必要です。
    
    位相
    
    役割
    
    例ユーザー(<username>)
    
    XPシングル
    
    xConnect(スタンドアロン、Cortex処理サービスを含む)(w3wp)
    
    IIS AppPool\\AppPoolName
    
    XPシングル
    
    Sitecore Cortex Processing Engine(Windowsサービス)
    
    NT自治体\\ローカルサービス
    
    XP スケールド
    
    Sitecore Cortex Processing Service(w3wp)
    
    IIS AppPool\\AppPoolName
    
    XP スケールド
    
    Cortex Processing Engine(Windowsサービス)
    
    NT自治体\\ローカルサービス
    

> !注Azure Web App Servicesを使っているがAzure Key Vaultは使っていない場合は、「 [Azure Web App Serviceで常に暗号化されたSQL](https://docs.microsoft.com/en-us/azure/sql-database/sql-database-always-encrypted-azure-key-vault?tabs=azure-powershell)を使う」をご覧ください。

## Sitecore Cortex処理の役割を設定する

Cortex処理タスクおよびCortex処理ストレージデータベースにアクセスするすべてのロールインスタンスで、以下の手順を完了する必要があります。

-   Sitecore Cortex処理エンジン
-   Sitecore Cortex Processing サービス

Sitecore Cortex Processingの役割をAlways Encryptedを使用するように設定するには:

1.  以下の構成ファイルでSqlCommandColumnEncryptionEnabled要素をtrueに設定し、Sitecore Cortex Processingサービスの役割を用いてください:
    
    -   <role-root>\\App\_Data\\Config\\Sitecore\\Processing\\sc.Processing.Engine.Storage.Sql.xml (ブロブストレージの暗号化を有効にする)
2.  Sitecore Cortex Processing Engineの以下の設定ファイルでSqlCommandColumnEncryptionEnabled要素をtrueに設定してください:
    
    -   <role-root>\\App\_Data\\Config\\Sitecore\\Processing\\sc.Processing.Engine.Cursors.Sql.xml (カーソルの暗号化を有効にする)
    -   <role-root>\\App\_Data\\Config\\Sitecore\\Processing\\sc.Processing.Engine.Storage.Sql.xml (ブロブストレージの暗号化を有効にする)
    -   <role-root>\\App\_Data\\Config\\Sitecore\\Processing\\sc.Processing.Engine.Tasks.Sql.xml (タスクの暗号化を可能にする)
    
    > !注デフォルトのトポロジーでは、Sitecore Cortex Processing EngineはSitecore Cortex Processing serviceフォルダ内のサブフォルダ内に位置しています。すべてのSitecore Cortex Processing Engine設定ファイルは以下の通りです: <processing-service-root>\\App\_data\\jobs\\continuous\\ProcessingEngine\\App\_Data\\Config\\Sitecore\\Processing
    

## タスクとストレージデータベースで常に暗号化を設定してください

> !重要これらの命令はxDB処理タスクおよびxDB処理プールデータベースには適用されません。

Sitecore Cortex™処理ストレージおよびSitecore Cortex処理タスクデータベースのAlways Encryptedを設定するには:

1.  以下の列に対して対応する暗号化タイプでAlways Encryptedを設定してください:·
    
    データベース
    
    柱
    
    暗号化の種類
    
    Cortex処理タスクデータベース
    
    \[カーソル\]。\[しおり\]
    
    ランダム化
    
    \[タスク\]。\[オプション\]
    
    ランダム化
    
    Cortex Processing Storage データベース
    
    \[ブロブズ\]。\[バリュー\]
    
    ランダム化
    
2.  制限されたユーザーに以下の権限を付与します(デフォルトではprocessingengineuser ):
    
    GRANT VIEW ANY COLUMN MASTER KEY DEFINITION TO <restricted\_user>
    GRANT VIEW ANY COLUMN ENCRYPTION KEY DEFINITION TO restricted\_user