権限セットとは
権限セットとは、Salesforceのアプリケーションやオブジェクト、ApexやVisualforceなどの様々な機能に関する権限の設定の塊です。
プロファイルとは異なり、権限セットは1ユーザに複数割り当てることが出来ます。
(プロファイルについてはこちらの記事を参照)
例えば、複数部署にまたがる業務を兼任している人に対し、個別に権限を付与する場合を想定します。
それぞれの業務に対するアクセス権限を持たせた権限セットを個別に作成し、業務を兼任する人にそれぞれの権限セットを割り当てることで、双方の業務に対するアクセス権を得ることが出来ます。
権限セット設定手順
事前準備(前提条件)として、権限セットを付与するユーザのプロファイルは、全てのカスタムオブジェクトへの権限が付いていない状態、かつ、カスタムアプリケーション「テストアプリケーション」への権限が付いていない状態にします。
今回はカスタムオブジェクトとカスタムアプリケーションへの権限を付与した権限セットを作成し、対象のユーザに権限セットを割り当てることで権限を付与します。
- 設定のホームから「権限セット」を選択し、「新規」を押下する

- 権限セット名や、ライセンスを選択し、「保存」を押下する
※ここでは権限セットライセンスに「Salesforce Platform」を選択
- 「割り当てられたアプリケーション」を押下する

- 「編集」を押下する

- 「選択可能なアプリケーション」(①)から権限を付与したいアプリケーションを選択し、「有効化されたアプリケーション」(②)へ移動して、保存(③)を押下する
※ここでは”テストアプリケーション”を選択する
- 割り当てられたアプリケーションに、選択したアプリケーションが追加されたことを確認し、権限セットの設定画面に戻る

- 「オブジェクト設定」を押下する

- 権限を設定するオブジェクトを選択する
※ここでは、”テストオブジェクト”を選択する
- 「編集」を押下する

- 各種権限を付与して、「保存」を押下する
- タブの設定:
「参照可能」にチェックをつけると、「利用可」にも自動でチェックが付きます。
「参照可能」の場合、アプリケーション画面において、配置したタブをそのまま参照・利用することが出来ます。
「利用可」のみにチェックを付けた場合、アプリケーション画面のタブには対象のタブは表示されませんが、アプリケーションランチャーから検索すれば、対象のタブを使用することが出来ます。 - レコードタイプの割り当て:
レコードタイプへのアクセス権限を設定できます。 - オブジェクト権限:
参照・作成・編集・削除に対する権限を設定できます。
より強い権限に合わせて自動で権限が決まるため、もし参照権限を付与しない場合はそれ以外の権限も自動的にOFFとなります(参照できないものを作成・削除しようがないため)
- 項目権限:
項目レベルセキュリティを設定できます。
今回は一部項目にのみ、参照・編集権限を付与します。
- タブの設定:
- 手順7~手順10同様の手順で、さらにオブジェクトの権限を設定する(ここでは”テスト子オブジェクト”の権限を設定する)
※ここではテスト子オブジェクトの参照権限のみ付与します


動作確認
- カスタムオブジェクトや、こちらで作成したテストアプリケーションに関する参照権限を持たないユーザで、権限セットを付与する前の状態で代理ログインする
※代理ログインのボタンが表示されない場合、ユーザ側の設定ができていない場合があります。代理ログインの設定手順や、プロファイルの設定についてはこちらの記事を参照してください
- 下図のように、アプリケーションやカスタムオブジェクトへの参照権限が無いことを確認する


- システム管理者でログインし直し、先ほど代理ログインしていたユーザの設定画面へ移動して、「権限セットの割り当て」セクションの「割り当ての編集」を押下する
※ユーザの基本情報はユーザ設定画面の「編集」を押下して設定しますが、権限セットの割り当ては「編集」ボタンは押下せず、設定画面の下にスクロールした下図の個所で設定します
- 「利用可能な権限セット」(①)から今回作成した権限セットを選択し、「有効化された権限セット」(②)へ追加して保存(③)を押下する

- 権限セットが割り当てられたことを確認して、再度代理ログインをする
※代理ログインのボタンが表示されない場合はこちらの記事を参照
- 権限セットにより、アプリケーションやタブへの権限が付与されたため、手順2で確認したとき表示されなかったアプリケーション・タブが利用できるようになっています

- テストオブジェクトの任意のレコード画面を開き、権限が付与された項目のみ表示されていることを確認する
※下図赤枠はページレイアウトの設定画面です。レイアウト上配置されていても、権限が付与されていない項目は画面に表示されず、セクション内の項目で表示できる項目が1つも無いセクションは、セクションごと非表示となります。
※ページレイアウトの設定については、こちらの記事を参照
- もう1つ権限セットで権限を付与したオブジェクト(テスト子オブジェクト)のレコード画面を開く
※テスト子オブジェクトのタブの権限設定を「利用可」にしているため、アプリケーションの上部には表示されず、アプリケーションランチャーから検索した際には利用できます
- 項目レベルセキュリティは「参照」権限のみ付与しているため、表示はされるが値の変更はできません

