これは何?
この記事は「24日後に立派なSalesforceエンジニアになるWEBエンジニア Advent Calendar 2022」の5日目の記事です。20日後に立派なSalesforceエンジニアになるために今日は昨日の続きで権限周りについて見ていきます。
昨日はデータへのアクセス権という観点で見ていきました。その中でオブジェクト権限は権限セットでもプロファイルでも設定ができると説明したのでこの記事ではプロファイルと権限セットの違いやどう使い分けていけば良いか私なりの理解で書いていきます。
プロファイルと権限セットの違い
プロファイル | 権限セット | |
---|---|---|
1ユーザーにつき | 1つ割り当てられる | 複数割り当てられる |
ページレイアウトの割り当て | ○ 例)正社員プロファイルとアルバイトプロファイルで同じ取引先ページを見ていても、その中に表示する内容を変えることができる |
× |
ログイン時間帯の制御 | ○ 例) 土日はログインできないようにする、平日は22時までしかログインできないようにする |
× |
ログインIPアドレスの制御 | ○ | × |
オブジェクトへのアクセス権設定 | ○ | ○ |
項目へのアクセス権設定 | ○ | ○ |
上記以外の権限については基本的にプロファイルでも権限セットでもどちらでも設定が可能。数も多いので割愛。権限セットについて詳しくはこちら。
上記の比較表を見てもらうと「権限セットなくてもいいんじゃない?」と思いませんか?
でももちろんそんなことはないんです。
基本的な考え方
これに関しては明確な決まりがあるわけじゃないけど、権限設定を行う際は以下を考慮して行うのが良さそう。
- プロファイルは最小構成にする
- 権限セットで足していく
- 職種については権限セットグループで表現する
具体例
例えば以下のような組織の場合。
- 組織としては営業部とカスタマーサポート部(CS)がある
- CSの中にはインバウンドチームとアウトバウンドチームがある
- 両チームと取引先の閲覧ができる
- インバウンドチームは受電ログというカスタムオブジェクトの作成と削除ができる
- 営業部は商談の作成ができる
- 営業部、CSそれぞれのマネージャーはダッシュボードの編集ができる
- CSのマネージャーはレポートの編集ができる
- CSの一部メンバーはインバウンドチームとアウトバウンドチームを兼務している
プロファイルはどうする?
プロファイルは「一般ユーザー」という最小権限のプロファイルを1つ作るか、「営業」「CS」という2つのプロファイルを作るかの選択肢がある。この場合
- 「営業」と「CS」で異なるページレイアウトを割り当てたいか
- 「営業」と「CS」で異なるログイン時間帯の制御やIPアドレスフィルタリングを指定したいか
で考えると良いと思う。
営業は平日9時〜18時、CSは全日9時〜20時まで働いていると仮定して今回はプロファイルは「営業」と「CS」で2つ用意する。
権限セットと権限セットグループはどうする?
必要になりそうな権限セットは
- 取引先の閲覧権限
- 商談の作成権限
- 電話ログの作成権限
- 電話ログの削除権限
- ダッシュボードの編集権限
- レポートの編集権限
これらを権限セットグループでまとめていくと
- インバウンドチーム
- 受電ログの作成権限
- 受電ログの削除権限
- 取引先の閲覧権限
- アウトバウンドチーム
- 取引先の閲覧権限
- 営業部マネージャー
- ダッシュボードの編集権限
- CS部マネージャー
- ダッシュボードの編集権限
- レポートの編集権限
- 営業
- 商談の作成権限
のようになるので最初の要件をユーザをおいて当てはめていくとこんな感じになる。
営業 | 営業 マネージャー |
アウトバウンド兼 インバウンド |
アウトバウンド | インバウンド | CS マネージャー |
|
---|---|---|---|---|---|---|
プロファイル | 営業 | 営業 | CS | CS | CS | CS |
権限セットグループ | ・営業 | ・営業部マネージャー | ・インバウンドチーム ・アウトバウンドチーム |
・アウトバウンドチーム | ・インバウンドチーム | ・CS部マネージャー |
権限セットの考慮事項
また権限セットの中にあった「受電ログの作成権限」と「受電ログの削除権限」は1つにまとめて「受電ログの管理」という権限セットにすることもできるが、あえて分けて作っている。なぜかというと権限セットの編集ページはこのような画面になっているのだが
見てわかるようにこの権限セット(画像で言うと「App_サービスコンソール」という権限セット)に何の権限がついているか一覧で見ることができない。確認する場合は画像内にあるリンク「割り当てられたアプリケーション」や「割り当てられた接続アプリケーション」をクリックして1ページずつ遷移して見ていかなければならない。
そのため1権限1権限セットにして、権限セットに命名規則を持たせることで、その名前の権限セットが具体的に何の権限を持っているのかがわかるようにしている。
例えば「割り当てられたアプリケーション」の権限に関する命名規則を「表示ラベル:App_アプリケーション名」「API参照名:App_AppName」としていた場合、画像の権限セットは「App_サービスコンソール」になっているので「割り当てられたアプリケーション」の中にある「サービスコンソール」の権限が割り当てられていることがわかる。
最後に
今日は権限セットとプロファイルについて学んでいきました。
この部分に関しては正直どうやるのがベストなのかまだまだ模索中ではありますが、今のところはこの管理方法が一番良さそうだと感じています。権限セットの数自体は非常に多くなってしまうけど。。
明日はメール周りの設定について見ていきます。