Salesforceプラットフォーム Shield Platform Encryptionを使ってみた
最近、Shield Platform Encryptionという言葉をよく耳にします。これは一体、どんなものなのでしょう? そこで、SalesforceプラットフォームであるShield Platform Encryptionを実際に使ってみました。すると、クリック操作で簡単に暗号化鍵の生成から項目暗号化までできて、驚きの連続でした。私がビックリした使ってみたShield Platform Encryption、詳しく解説いたします。
Shield Platform Encryptionとは?
Shield Platform Encryptionとは、項目の暗号化のことです。保存時に内部で暗号化すると、不正な外部アクセスによる機密データの漏えいを防ぐことができます。利用する目的は、企業が保有する機密性の高いデータを、不正アクセスからより強固に保護するケースが多いでしょう。
従来の暗号化との違いはどんなものなのでしょう? 従来は特定のカスタム項目のデータのみを暗号化対象としていましたが、Shield Platform Encryptionは、以下の内容を暗号化できるのが特徴です。
- 標準項目:名前、メールアドレスなど、幅広く使用される項目
- カスタム項目:独自のデータを入力するための項目
- ファイル:添付ファイルなど
このような項目やファイルを暗号化することで、広範囲なデータの保護が可能になります。
Shield Platform Encryptionは、データ漏洩のリスク軽減やデータの機密性向上から、企業のコンプライアンス強化を目指すことができます。従って年々、必要性は高まっています。
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に問い合わせる必要があるようです。
実際にデータを作成してみよう
それでは、Shield Platform Encryptionを使って、データを作成してみます。
あれ、暗号化してるはずなのに値が表示されてる。。と思われるかもしれませんが、「暗号化」にチェックを入れればしっかりと暗号化はされています。
実は、以前は旧タイプと同じように暗号化された項目はマスキング(*****で表示)されていたのですが、しかし、Spring’17のリリースで仕様に変更があり、暗号化していてもマスキングされず、ユーザがその項目を参照可能であるならばデータを参照できるようになりました。
この仕様変更により、レコードを見ただけでは暗号化されているかどうかを判断することができなくなってしまいました。従って、テストするには暗号化したい項目の「暗号化」チェックに正しくチェックが入っていることを一つ一つ確認するしかなさそうです。
また、既存データに暗号化を適用したい場合は、必ずデータを空更新するのを忘れないようにしましょう。
まとめ
「Salesforceプラットフォーム Shield Platform Encryptionを使ってみた」と題して、ご紹介してまいりました。簡単なクリック操作で暗号化鍵の生成から項目暗号化までできることがご理解いただけたと思います。Shield Platform Encryptionは高度で便利な項目の暗号化ができる機能を持っていますので、みなさんもぜひ、活用していきましょう。
弊社ではSalesforceノウハウ共有ツール「KnowhowBase」は‘ノウハウを作る、探す、活用する’をコンセプトに、Salesforceプラットフォーム上で利用できる便利な機能をご提供しています。また、「Salesforce導入サービス」 「Salesforce伴走・開発支援サービス」により、Salesforceを新規導入される方、Salesforceの定着・活用や運用保守・開発を要望される方に合ったサービスもご提案しております。ご興味のある方は、お気軽にお問い合わせください。
当サイトでノウハウ共有やSalesforceの定着促進・保守運用・開発を検討している方へ、様々なダウンロード資料をご用意しております。ぜひ資料をダウンロードいただき、ご活用ください。