この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

確定的暗号化を使用する場合の考慮事項

これらの考慮事項は、Shield Platform Encryption の確定的暗号化スキームで暗号化されたデータに適用されます。確定的暗号化スキームでデータを暗号化するときに大文字と小文字を区別するかどうかによって、示される考慮事項が異なる場合があります。

鍵の循環と絞り込みの可用性

鍵素材を循環したり、項目の暗号化スキームを大文字と小文字を区別する確定的暗号化スキームまたは大文字と小文字を区別しない確定的暗号化スキームに変更する場合は、データを同期します。同期すると、Salesforce の (確定的) 鍵素材にあるアクティブなデータが既存データおよび新規データに適用されます。データを同期しない場合、一意の属性を持つ項目を絞り込み、クエリを実行しても、正しい結果が返されません。

[設定] の [暗号化統計およびデータ同期] ページからほとんどのデータを自分で同期できます。詳細については、「バックグラウンド暗号化サービスによるデータ暗号化の同期」を参照してください。

使用可能な項目およびその他のデータ

確定的暗号化は、カスタム URL、メール、電話、テキスト、テキストエリアのデータ型で使用できます。次の種類のデータでは使用できません。

  • カスタム日付、日付/時刻、ロングテキストエリア、リッチテキストエリア、説明のデータ型
  • Chatter
  • ファイルと添付ファイル

検索条件の演算子

レポートとリストビューでは、演算子「次の文字列と一致する」および「次の文字列と一致しない」は、大文字と小文字を区別する確定的暗号化でサポートされています。「次の文字列を含む」や「次の文字列で始まる」などのその他の演算子は、完全一致を返さず、サポートされません。絞り込み項目検索条件など、サポートされていない演算子に依存する機能もサポートされません。

大文字と小文字を区別しない確定的暗号化では、リストビューとレポートをサポートします。ただしユーザインターフェースには、暗号化データをサポートしない演算子を含め、すべての演算子が表示されます。サポートされている演算子のリストを確認するには、「数式での暗号化されたデータの使用」を参照してください。

数式

確定的暗号化スキームを使用して暗号化された項目は、SOQL WHERE クエリでは参照できません。

大文字と小文字の区別

大文字と小文字を区別する確定的暗号化を使用する場合、大文字と小文字の区別が重要になります。暗号化された項目のレポート、リストビュー、SOQL クエリの結果では大文字と小文字は区別されます。したがって、取引先責任者オブジェクトに対する SOQL クエリで LastName = Jones とすると、Jones のみが返され、jones や JONES は返されません。同様に、大文字と小文字を区別する確定的スキームで単一性 (ユニーク性) をテストする場合、「Jones」の各バージョンがすべてユニークになります。

カスタム項目の割当

大文字と小文字を区別しないクエリを許可するために、Salesforce では、データの小文字の複製をカスタム項目としてデータベースに格納します。これらの複製は、大文字と小文字を区別しないクエリを可能にするために必要ですが、カスタム項目の合計数にカウントされます。

絞り込み可能な項目を識別する API オプション

確定的暗号化スキームを使用して暗号化された項目は絞り込み可能です。isFilterable() メソッドを使用すると、暗号化された特定の項目の暗号化スキームを判断できます。項目が絞り込み可能であれば、メソッドは true を返します。

ただし、API を使用して確定的暗号化スキームを明示的に検出または設定することはできません。

外部 ID

大文字と小文字を区別しない確定的暗号化では、テキストとメールの外部 ID カスタム項目をサポートしますが、その他の外部 ID カスタム項目はサポートしません。これらの項目を作成または編集するときは、以下の項目設定の組み合わせのいずれかを使用します。

外部 ID データ型 一意の属性 暗号化
Text なし 大文字と小文字を区別しない確定的暗号化を使用
Text 一意かつ大文字と小文字を区別する 大文字と小文字を区別する確定的暗号化を使用
Text 一意かつ大文字と小文字を区別しない 大文字と小文字を区別しない確定的暗号化を使用
Email なし 大文字と小文字を区別しない確定的暗号化を使用
Email 一意 大文字と小文字を区別する確定的暗号化を使用

[ユニーク - 大文字と小文字を区別する] および [暗号化] オプションの両方の変更を同時に保存す��ことはできません。1 つの設定を変更し、保存してから、次の設定を変更します。

複合項目

確定的暗号化を使用していても、一部の種類の検索は、データが大文字と小文字を区別する確定的暗号化で暗号化されている場合には機能しません。複合名などの連結された値は、個別の値と同じではありません。たとえば、複合名「William Jones」の暗号文は、「William」と「Jones」の暗号文を連結したものと同じではありません。

そのため、取引先責任者オブジェクトの [名] 項目と [姓] 項目が暗号化されている場合、次のクエリは機能しません。
1Select Id from Contact Where Name = 'William Jones'
ただし、次のクエリは機能します。
1Select Id from Contact Where FirstName = 'William’ And LastName ='Jones'
大文字と小文字を区別するまたは区別しない確定的暗号化スキームでは複合項目がサポートされますが、個別の列クエリのみでサポートされます。

文字列のよるレコードの絞り込み

文字列を使用してレコードを検索できます。ただし、文字列内のカンマは OR ステートメントとして動作します。文字列にカンマが含まれる場合は、文字列を引用符で囲みます。たとえば、「“Universal Containers, Inc, Berlin”」を検索すると、カンマも含めた文字列全体を含むレコードが返されます。「Universal Containers, Inc, Berlin」を検索すると、「Universal Containers」または「Inc」または「Berlin」を含むレコードが返されます。

SOQL の GROUP BY ステートメント

確定的暗号化では、ほとんどの SOQL ステートメントを使用できます。GROUP BY は例外で、サポートされていません。ただし、レポート結果を行または列でグループ化することはできます。

SOQL の LIKE および STARTS WITH ステートメント

確定的暗号化では、大文字小文字を含めた完全一致のみがサポートされます。部分一致を返す比較演算子はサポートされていません。たとえば、LIKE ステートメントと STARTS WITH ステートメントはサポートされません。

SOQL の ORDER BY ステートメント

確定的暗号化では、データベース内の暗号化されたデータの並び替え順が維持されないため、ORDER BY はサポートされていません。

インデックス

大文字と小文字を区別する確定的暗号化では、標準項目およびカスタム項目の単一列インデックス、単一列の一意のインデックス (大文字と小文字を区別)、2 列インデックス、カスタムインデックスがサポートされています。

大文字と小文字を区別しない確定的暗号化では、次の標準項目の標準インデックスが限定的にサポートされます。
  • 取引先責任者 — メール
  • メールメッセージ — リレーション
  • リード — メール
  • 名前
上記の項目に対するクエリは、大文字と小文字を区別しない確定的暗号化を使用して暗号化されている場合、大規模なテーブルでパフォーマンスが低下する可能性があります。クエリの最適なパフォーマンスを確保するには、標準インデックスの代わりにカスタムインデックスを使用します。カスタムインデックスを設定する場合は、Salesforce カスタマーサポートにお問い合わせください。

多数のレコードを含む項目に確定的暗号化を適用する場合は、有効化プロセスに長い時間がかかる可能性があります。絞り込みをサポートするため、有効化プロセスでは項目インデックスも再作成されます。

Next Best Action Recommendations

確定的暗号化を使用する場合、暗号化項目は、「次の文字列と一致する」または「次の文字列と一致しない」演算子を使用する読み込み条件でのみ使用できます。

Chat

最大限の推奨結果を得るには、発言の提案オブジェクトの [発言] 項目で大文字と小文字を区別する確定的暗号化スキームを使用します。この項目では、現在、他の暗号化スキームはサポートされていません。