フィールド暗号化エンタープライズ
フィールド暗号化エンタープライズ では キー管理フレームワーク (KMF) を使用して、インスタンスでのフィールドと添付ファイルの暗号化方法と復号化方法をカスタマイズおよび管理できます。フィールド暗号化エンタープライズを使用するには、サブスクリプションが必要です。
フィールド暗号化エンタープライズ は フィールド暗号化 を前提としており、 キー管理フレームワーク とそのキー管理機能の完全なサポートを使用します。 フィールド暗号化エンタープライズ は、アプリケーションレベルのフィールド暗号化のためのキー保護とキーライフサイクル管理を提供します。すべてのキーは、最終的に FIPS (連邦情報処理標準) 140-2-L3 ハードウェアセキュリティモジュール (HSM) に基づくキーラッピング階層で保護されます。
フィールド暗号化エンタープライズ を使用すると、サポートされているフィールドを NIST 800-57 プラクティスに従って暗号化および復号化する方法を管理できます。また、適切なキーの保護と管理のための統合を含む、最新バージョンのフィールドレベルの暗号化を使用します。
具体的には、 フィールド暗号化エンタープライズ は KMF 暗号化モジュールを使用して、サーバー側の暗号化をより詳細に制御できます。 KMF 、キー階層とエンベロープ暗号化を使用して、適切なデータ暗号化キーの保護を検証します。インスタンスは、設定した暗号化モジュールでデータを暗号化します。各モジュールのアクセスポリシーを作成してから、暗号化仕様とアクセスポリシーを設定し、キーライフサイクル管理コントロールを制御できます。
フィールド暗号化エンタープライズ は、以下に基づくモジュールアクセスポリシーをサポートしています。
- スコープ
- ロール
- スクリプト
- リソース交換
- システムユーザー
暗号化の用語
| 用語 | 説明 |
|---|---|
| キー管理のサポート フィールド暗号化エンタープライズ の基礎は Key Management Framework (KMF) です。 次の機能が得られます。
詳細については、「キー管理フレームワークの参照」を参照してください。 |
|
| 顧客指定のキーのサポート フィールド暗号化エンタープライズ の最大のメリットの 1 つは、暗号化に独自のキーを使用できることです。アドミニストレーターは、ServiceNow 指定のキーまたは独自の顧客指定のキー (CSK) を ServiceNow AI Platform® の暗号化に使用できます。 キーのライフサイクルを管理し、キーの取り消し、ローテーション、および無効化のタイミングを決定することもできます。顧客指定のキーを有効にして暗号化モジュールを作成した後、トークンと短期公開キーをダウンロードします。トークンと公開鍵を使用してキーをラップし、インスタンスにアップロードします。顧客指定のキーを使用するには、「キータイプを選択するためにフィールド暗号化を設定する」および「フィールド暗号化エンタープライズでの顧客指定のキーの使用」を参照してください。 |
|
| フィールド暗号化と添付ファイルの暗号化の両方をサポート フィールド暗号化と添付ファイルの暗号化はどちらも、暗号化フィールド構成を介して暗号化モジュールとアクセスポリシーを使用します。暗号化フィールド構成フォームを使用して、列の暗号化タイプまたは添付ファイルの暗号化を選択します。詳細とサポートされているフィールドタイプについては、「暗号化フィールド構成を設定する」を参照してください。 |
|
| 非決定的暗号化のサポート フィールド暗号化エンタープライズ は、セキュリティ強化のために非決定的暗号化をサポートしています。システムが同じデータを複数回暗号化する場合、暗号化テキストは毎回異なります。非決定的暗号化は、暗号ブロックチェーン (CBC) を使用した Advanced Encryption Standard (AES) 暗号化で使用できます。 この機能は、暗号化仕様のアルゴリズム定義ステージの等価性保存オプションで有効にできます。暗号化モジュールの暗号化仕様を作成し、キーを暗号化し生成するためのアルゴリズムを定義します。 暗号化操作に使用するメカニズムを定義し、非決定的暗号化を有効にする方法の詳細については、「暗号化モジュールを作成する」を参照してください。 |
|
リソース交換 フィールド暗号化エンタープライズ は KMF 暗号化 API を使用してインスタンス間を保護し、機密性、完全性、認証、および否認防止を提供します。リソース交換 は、安全な方法でインスタンス間でリソースを交換する機能を提供する KMF 機能です。詳細は、「キー管理フレームワークリソース交換」を参照してください。 |
フィールド暗号化エンタープライズ はオンプレミスの顧客をサポートしています。ドメインセパレーションはサポートされていません。
追加の暗号化フィールドのサポート
フィールド暗号化 の標準バージョンでは、暗号化された列は 5 つに制限されています。フィールド暗号化エンタープライズ は、無制限の数の暗号化列をサポートしています。
サポートされるフィールド情報
- 添付ファイル
- 日付
- 日付/時刻
- メール
- HTML
- ジャーナル
- ジャーナル入力
- ジャーナルリスト
- 電話
- 文字列テキスト
- 翻訳 (変換) 済みフィールド
- 翻訳された HTML
- 翻訳されたテキスト
- URL
添付ファイルの暗号化
- デフォルトでの添付ファイルの暗号化
フィールド暗号化を使用しているお客様の場合、アクティブな暗号化フィールドの構成 (EFC) タイプ Attachment のテーブルの添付ファイルはデフォルトで暗号化されています。
EFC 構成で定義されているこのデフォルトの暗号化は、アドミニストレーターがこれらのテーブルのアップロード時に添付ファイルを暗号化することを手動で宣言する必要がないことを意味します。
- アドミニストレーターは、ユーザーが暗号化されていないファイルを添付することを禁止できます。
- 詳細については、「ユーザーが暗号化されていないファイルを添付できないようにする」を参照してください。
- デフォルトの暗号化のオプトアウト
EFC 構成に基づいてデフォルトで添付ファイルを暗号化したくない場合は、ServiceNow サポートに連絡してこのオプションをオプトアウトできます。
この機能をオプトアウトするには、ServiceNow サポートでサポートケースを作成し、ケースレコードのコメントに次のステートメントを含めます。
「I [顧客名], understand that I am asking ServiceNow to turn off a recommended security best practice for attachments, and that [customer company] assumes any additional risk related to their configuration and use of unencrypted attachments in the ServiceNow application.」
API サポート
フィールド暗号化エンタープライズ は、次の API を有効にします。
| API | 説明 | パラメーター | 戻り値の型 |
|---|---|---|---|
|
添付ファイルの暗号化に使用するアクティブな暗号化コンテキスト (EC) を更新します。 KMF 暗号化モジュール (CM) を使用して CLE スタータープラグインで CLE を有効にすると、API は EC の CM を検索し、それを使用して添付ファイルを暗号化します。 注: この API は、グローバルスコープでのみ使用できます。 |
|
ブール |
changeCryptoModule() |
添付ファイルの暗号化に使用されるアクティブな暗号化モジュールを更新します。 注: この API は、グローバルスコープでのみ使用できます。 |
|
ブール |
disableEncryption() |
添付ファイルのアクティブな暗号化を無効にします。 |
|
ブール |
getDisplayValue() |
暗号化フィールドのクリアテキスト表示値を返します。 | 文字列 | |
getValue() |
glide_encryption.set_value_support_cle.disabled が false の場合 (モジュールアクセスポリシー (MAP) が必要) 暗号化フィールドのクリアテキスト値を返します。 glide_encryption.set_value_support_cle.disabled が true の場合に暗号化フィールドの暗号化された値を返します。 |
文字列 | |
setDisplayValue() |
表示のために暗号化されたデータを暗号化フィールドに挿入します。 |
|
ブール |
setValue() |
システムプロパティによって制御される暗号化フィールドに、暗号化されたデータを挿入します。 glide_encryption.set_value_support_cle.disabled が false の場合 (MAP が必要) にデータを暗号化します。[set_value_support_cle.disabled] が true に設定されている場合 (MAP は不要)、glide_encryption.set_value_support_cle.disabled が true の場合、暗号化されていないデータを書き込みます。 |
|
ブール |
次のスクリプトは、インシデントの簡単な説明が暗号化されている場合の API の変更を示しています。
var gr = new GlideRecord('incident'); //creates a new incident
gr.setValue('short_description','test123'); //sets the value to test123
var sys_ID = gr.insert(); //inserts the record in the Incident table.
gs.info(gr.getValue('short_description')); //displays the unencrypted value
フィールド暗号化プラグインがインストールされている場合、 glide_encryption.set_value_support_cle.disabled はデフォルトで false に設定されます。
暗号化されたテキストフィールドで getValue() を呼び出すと、暗号化モジュールにアクセスできる場合はプレーンテキストが返されます。それ以外の場合は、暗号テキストまたは null のいずれかを返します。