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

TenantSecret

組織固有のデータ暗号化鍵を生成するために主秘密で使用される、暗号化された組織固有の鍵の部分を保存します。このオブジェクトは、API バージョン 34.0 以降で使用できます。

テナントの秘密は、Sandbox 組織では 4 時間に 1 回、本番組織では 24 時間に 1 回循環できます。

この情報は、Shield プラットフォームの暗号化には適用され、従来の暗号化には適用されません。詳細は、Salesforce オンラインヘルプを参照してください。

メモ

サポートされているコール

create()query()retrieve()update()

項目

項目名 詳細
Description
string
プロパティ
Create、Nillable、Update
説明

テナントの秘密の説明。

SecretValue
base64
プロパティ
Nillable、Update
説明

base64 で符号化された、256 ビットの暗号化された秘密の値。

Status
Restricted picklist
プロパティ
Filter、Group、Nillable、Restricted picklist、Sort
説明
テナントの秘密の現在の状況。値は次のとおりです。
有効
新規または既存のデータを暗号化および復号化する場合に使用される可能性があります。
アーカイブ済み
新しいデータを暗号化できません。鍵が有効であったときにこの鍵を使用して以前に暗号化されたデータを復号化する場合に使用される可能性があります。
破棄済み
データを暗号化および復号化することはできません。鍵が有効であったときにこの鍵を使用して暗号化されたデータを復号化することはできません。
Version
int
プロパティ
Filter、Group、idLookup、Sort
説明

この秘密のバージョン番号。バージョン番号は組織内で一意です。

使用方法

このオブジェクトを使用して、組織固有のテナントの秘密を作成または更新します。たとえば、テナントの秘密の作成と有効化を自動化するソリューションを次のように作成できます。

  1. まず、新しいテナントの秘密を作成する Apex クラスを作成します。
    1global class CreateNewSecret implements Schedulable {
    2   global void execute(SchedulableContext SC) {
    3      TenantSecret k = new TenantSecret ();
    4      k.description = 'Created new secret from scheduled job';
    5      insert k;
    6   }
    7}
  2. 指定された間隔で実行されるように Apex クラスをスケジュール設定します。

    この Apex コードは、ジョブをスケジュール設定するために 1 回実行するだけで十分です。次のコードで、ジョブが 90 日ごとに実行されます。

    1CreateNewSecret secret = new CreateNewSecret();
    2String schedule = '0 0 0 1 JAN,APR,JUL,OCT ?';
    3String jobID = system.schedule('Automated secret creation and activation', schedule, secret);
  3. ジョブがスケジュール設定されたことを確認します。
  4. ジョブの実行後にテナントの秘密が作成されたことを確認します。

次に、テナントの秘密を破棄する例を示します。

テナントの秘密は、組織およびテナントの秘密を適用する特定のデータに対して一意です。テナントの秘密を破棄すると、以前にエクスポートした鍵を Salesforce にインポートし直さない限り、関連データにアクセスできなくなります。

警告

1TenantSecret secret = [SELECT Id FROM TenantSecret WHERE Version = 2];
2secret.SecretValue = NULL;
3update secret;