blog
ブログ

Salesforce技術ブログ(Shield Platform Encryptionを使ってみた ~クリック操作で簡単!鍵の生成から項目暗号化まで~)

はじめまして、グリーンティー荒井です。抹茶が大好きです!

今回は、最近よく耳にするShield Platform Encryptionを使ってみました。

Shield Platform Encryptionとは、項目の暗号化のことです。
保存時に内部で暗号化されるようにすることで、不正な外部アクセスによる機密データの漏えいを防ぐことができます。

Salesforceにおける暗号化の種類

さて、本題の前にSalesforceの暗号化についてのお話を。

Salesforceにおける暗号化には2種類あることをご存知でしょうか。
平たく言いますと、暗号化には旧タイプと新タイプがあり、そのうちの新タイプのものが今回のShield Platform Encryptionにあたります。

ちなみに旧タイプとは [テキスト(暗号化)] 項目として作成するもの↓、

新タイプ(Shield Platform Encryption)とは、[テキスト] 項目などとして作成して、「暗号化」にチェックを付けるもの↓となります。

この「暗号化」は鍵を生成することで表示されるようになります。
ちなみに、「暗号化」チェックが表示されるデータ型=暗号化できるデータ型となっており、下記が該当します。
「テキスト」「テキストエリア」「ロングテキストエリア」「URL」「メール」「電話」「日付」「日付/時間」

一見暗号化できそうな選択リスト値や数値は暗号化できないんですね。

また、上記に該当するデータ型でも、他の数式項目で使用されている項目は暗号化できないので注意が必要です。
(「暗号化」にチェックをつけても自動的に外れてしまいます。)

また、このShield Platform Encryptionは、Summer ’15 以降に作成された Developer Edition 組織では無料で使用できますが、Enterprise Edition、Performance Edition、および Unlimited Editionでは別途Salesforce Shieldの購入が必要となります。

Shield Platform Encryptionでの暗号化を試してみる

それでは、暗号化を行っていきたいと思います。今回はDeveloper Edition組織で試してみます。

1.鍵の生成

※下記手順は、「暗号化鍵の管理」権限を持つユーザでないと操作できません。
プロファイル、または権限セットで権限を割り当てます。

まずは「設定>セキュリティのコントロール>プラットフォームの暗号化」に遷移し、「テナントの秘密を生成」を押します。鍵の生成はたったこれだけ!

これで鍵が作成されました。Shield Platform Encryptionでは、この鍵を使って暗号化が実施されます。

ちなみに、Shield Platform Encryptionでは添付ファイルの暗号化も可能です。
ファイルを暗号化したい場合は「ファイルと添付ファイルを暗号化」にチェックを入れ、保存を押します。

2.暗号化の設定

「設定>作成>オブジェクト」から暗号化したい項目の編集画面に遷移し、「暗号化」にチェックを付けます。

これで項目の暗号化が完了です。とても簡単!
この設定以降に作成されるデータから暗号化が適用されます。既存データに暗号化を適用するにはデータを空更新をしてください。

添付ファイルの暗号化も同様に、「ファイルと添付ファイルを暗号化」にチェックを入れた後にアップロードしたファイルから暗号化が適用されます。
ただ、既存ファイルへ暗号化を適用したい場合、こちらはSalesforceに問い合わせる必要があるようです。

それではデータを作成してみます。

あれ、暗号化してるはずなのに値が表示されてる。。と思われるかもしれませんが、「暗号化」にチェックを入れればしっかりと暗号化はされています。

実は、以前は旧タイプと同じように暗号化された項目はマスキング(*****で表示)されていたのですが、Spring’17のリリースで仕様に変更があり、暗号化していてもマスキングされず、ユーザがその項目を参照可能であるならばデータを参照できるようになりました。

この仕様変更により、レコードを見ただけでは暗号化されているかどうかを判断することができなくなってしまったので、テストするには暗号化したい項目の「暗号化」チェックに正しくチェックが入っていることを一つ一つ確認するしかなさそうです。

また、既存データに暗号化を適用したい場合は、必ずデータを空更新するのを忘れないようにしましょう。

Shield Platform Encryptionのお値段が気になる方は、弊社までお問い合わせください。

それでは今回はここまで。
また何かありましたら書きたいと思います。

contact

ご相談・ご質問等ございましたら、お気軽にお問い合わせください。

翻訳