#はじめ
Salesforceの権限設定について_Part1でSalesforceの基本的な設定について説明しました。
Part2ではPart1で設定した基本設定をもとにオブジェクトへの共有権限を制限できる設定に整理してみたいと思います。
- 共有ルール(Sharing Rules)
- 公開グループ(Public Group)
Salesforceには取引先(Account)やケース(Case)などを利用し機密性の高い個人情報や営業情報が格納し、管理することが多い。なので情報によっては社内や部署内でもセキュリティ上を理由に公開を制限する必要がある。なのでSalesforceの基本設定でも取引先とケースは非公開になっている。その非公開になっているオブジェクトを共有ルールによって部分的に公開するのができる。そしてその共有ルールをもっと柔軟に設定できるように使うものが公開グループである。
レコード参照・編集権限を持つ条件
- プロファイルにて該当オブジェクトへのアクセス権を持っているか
- 全レコードへの参照権を持っているか
- 該当レコードの所有者なのか
- 所有者のロールより上位のロールを持っているか
- 組織の共有設定状況が「参照のみ」または「参照・編集」なのか
- 共有ルールの条件を満たしているか
※上記の条件を全部満たす必要がある。
#本文
##共有ルール
共有ルールは、レコード所有者やその他の条件 (レコードタイプや特定の項目値など) に基づきます。各オブジェクトには最大 300 件の共有ルール (最大 50 件の条件に基づく共有ルールを含む) を定義できます (オブジェクトで使用可能な場合)。
※https://help.salesforce.com/articleView?id=security_sharing_rules_create.htm&type=5
- ルールタイプ
- レコード所有者(Owner)に紐づく
レコード所有者のロールや公開グループに紐づくユーザへの公開を設定 - 条件に基づく
レコードが持つ属性の条件によってユーザへの公開を設定
- レコード所有者(Owner)に紐づく
- 共有先のカテゴリ
https://help.salesforce.com/articleView?id=security_sharing_data_set_categories.htm&type=5 - アクセス権
- 参照
- 参照・更新
- 非公開
公開グループ(Public groups)
グループは一連のユーザで構成されます。グループには、個々のユーザ、その他のグループ、または特定のロールやテリトリーのユーザを含めることができます。あるいは、特定のロールやテリトリーのユーザと、階層でそのロールやテリトリーよりも下位のすべてのユーザを含めることができます。
https://help.salesforce.com/articleView?id=user_groups.htm&type=5
一つの公開グループを作成する際に複数のユーザ、ロール、公開グループなどが選択できる。
【例】
ロールA | ロールB | ロールC | ロールD |
---|---|---|---|
ユーザA1 | ユーザB1 | ユーザC1 | ユーザD1 |
ユーザA2 | ユーザB2 | ユーザC2 | ユーザD2 |
ユーザA3 | ユーザB3 | ユーザC3 | ユーザD3 |
公開グループA:ロールA、ユーザB1、ユーザC1
公開グループB:ロールA、ロールC、公開グループA
上記のような設定も可能。
#結び
まとめると以下のような共有ルールを持つ場合、アクセス権限は以下のようになる。
共有ルール | 共有先 | アクセス権 |
---|---|---|
取引先のレコードタイプが「ほげほげ」の場合 | 公開グループB | 参照 |
取引先のレコードタイプが「ほげほげ」の場合 | 公開グループA | 参照・編集 |
ロールA(参照・編集) | ロールB | ロールC(参照) | ロールD |
---|---|---|---|
ユーザA1(参照・編集) | ユーザB1(参照・編集) | ユーザC1(参照・編集) | ユーザD1 |
ユーザA2(参照・編集) | ユーザB2 | ユーザC2(参照) | ユーザD2 |
ユーザA3(参照・編集) | ユーザB3 | ユーザC3(参照) | ユーザD3 |
###参考資料