Salesforce App bulider：Salesforce データセキュリティ

#データセキュリティ
##組織レベル
###ユーザ作成
要求：
①ユーザ名：世界唯一
②メール：パスワード通知またリセットする時送信対象アドレス、複数ユーザは同じ設定可能
③ロール：作成する時、していしなくでも大丈夫です、ロール階層設定用
④ユーザライセンス：該当ユーザ所属ライセンス（開発する時、お客様と確認）
⑤プロファイル：該当ユーザの利用プロフィール指定（権限など関連）
⑥パスワードをリセットしてユーザに通知する：事前作成のユーザは、このチェック外す、利用必要の時にパスワードリセットする。
<font color="Red">　↑パスワードリセットのメールのデフォルト有効期限は7日、変更できる期限は「1日」と「180日」</font>
<font color="Red">※ユーザ削除不可、退職ユーザは無効を設定すれば、ライセンス解放</font>
・新規ユーザ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/965ceb6a-538c-646c-a0b7-9930d5aff339.png)
・複数ユーザを追加：同時10人まで追加可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/04ac4ed7-4c46-d946-d393-d8666a1153c1.png)
###ログインIP制限設定（プロファイル別）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/00be4d6a-db4b-5e77-9bd3-a9e1099b4bf4.png)
###ログイン時間帯設定（プロファイル別）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/f7beb551-fef4-d542-1e9d-483df957254a.png)
###パスワードポリシーの設定
パスワード有効期限、複雑さ、ログイン失敗によりロックするまでの回数、ログアウトの有効期間など設定可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/3133870a-b9f5-92e2-aed9-ba1e8ee9f77e.png)
※代理管理者
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/d1fed191-fb8f-2aea-8254-f3f800a946cb.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/24d73e70-f6b2-ef9c-f376-8a713bcc0b56.png)
##オブジェクトレベル
プロファイルまたは権限セットを使用して設定できます。1 人のユーザには 1 つのプロファイルと複数の権限セットを設定できます。

・ユーザのプロファイルによって、ユーザがアクセスできるオブジェクトと、オブジェクトレコードでユーザが実行できる操作 (作成、参照、編集、削除など) が決まります。
・権限セットを使用すれば、ユーザに追加の権限を付与したり、アクセスを設定することができます。適用した特定のグループまたユーザに対して、プロファイルの補足の認識で大丈夫です。
<font color="Red">　※アクセス権限は縮小することができないので、プロファイルに応用対象ユーザの最小権限を設定する。
例えば、プロファイルにあるオブジェクトを編集可能設定して、権限セットに参照のみを設定しても、該当オブジェクト対して、編集可能です。
　　一部のユーザの権限縮小したい場合、新しいプロファイル作成必要</font>
###標準プロファイル
標準プロファイルは下記のようなものがある、権限は既定ですので、変更不可
・標準ユーザ（オブジェクトレベルのカスタムオブジェクトアクセスできない、ただし、項目レベルアクセス可能、統計関連標準オブジェクトのアクセス権限付いていない）
・マーケティングユーザ
・契約管理者
・システム管理者（全オブジェクトの全権限がある）
・最小アクセス - Salesforce

###プロファイル作成
　・プロファイルを作成する最も簡単な方法は、作成するプロファイルと似た既存のプロファイルをコピーし、それを変更することです。
<font color="Red">※[拡張プロファイルユーザインターフェース] が「有効化」に設定必要、この設定有効化すると、プロファイルの表示方法が変わります</font>
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/6ad7bf9a-d2ff-4a72-c47d-29a8bbc35a75.png)
設定前
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/c896bcd7-0716-cf63-da37-d280492e6154.png)

設定後
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/4f6527ba-afab-4198-3042-a2e4928375c8.png)

コピー作成のプロファイルオブジェクトレベル権限設定可能（カスタム、標準両方）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/f94fd86f-bb63-bef8-7a8b-88889cd8ca55.png)


###権限セット作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/45056c88-2b0f-7c87-3514-0b168eea89ca.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/5e3b4458-d703-bd7f-c582-f69666525d65.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/0985d9c1-f79a-513d-984a-e96ec91751c4.png)

##項目レベル
###プロファイル
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/03397298-9bc3-d6b9-119a-a5d5489cc963.png)

###権限セット
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/ea25132c-562e-2a9d-26e2-9eec6c9ed056.png)

<font color="Red">
※オブジェクトレベルと項目レベルの区別：
オブジェクトレベル：新規、削除、全表示、全編集の権限指定可能。
　　　　　　　　　　読む、編集については実際の権限は項目レベルの権限です。
項目レベル：項目表示また編集出来るかどうか指定する、画面表示用基準レベルの認識で宜しいです
</font>

##レコードレベルセキュリティ
<font color="Red">$\huge{※自分作成のレコードではなく、}$ 
$\huge{他のユーザー作成のレコードのアクセス権限設定}$ </font>
・組織の共有設定
・ロール階層
・共有ルール
・共有の直接設定
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/0e368702-3bc5-7f46-ce4c-a2a03edf3468.png)
###組織の共有設定：
相互のレコードに対するユーザのデフォルトのアクセスレベルを指定します。（「設定」-「共有設定」)
<font color="Red">共有設定はオブジェクトレベルと権限セット依存、オブジェクトレベル参照権限のみの場合、編集権限付いても、編集不可
そして、共有設定は「公開/参照・更新可能」設定する時、他のレコード全権限が持っているので、ロール、共有ルール設定必要がない</font>
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/ec153d70-eafe-e0de-f11d-c1b4f1002045.png)
###ロール階層：
マネージャには常にその部下と同じレコードへのアクセス権を付与します。階層の各・ロールは、ユーザまたはユーザグループが必要とするデータアクセスのレベルを表します。（ロール）
<font color="Red">ロール設定して、上位の権限と下位の権限違うの場合、プロファイルまた権限セット追加必要
例えば、あるオブジェクトに対して、CEOは参照のみ、SPは参照、新規、更新、削除権限がある場合、ユーザは同じプロファイルを利用して、SP用の権限セットとCEO用の権限セット作成必要</font>
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/24679f33-56aa-12b3-3cd7-10a1cd7d16c3.png)
###共有ルール：
特定のユーザグループに対して組織の共有設定の例外を自動的に作成して、所有していないレコードや通常は参照できないレコードへのアクセス権を付与します。（共有ルール）
####共有ルール作成方法
①グループ、ロール作成（共有ルールの前提条件）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/f21a9a73-ae77-18c6-47c9-d0176b69d4bb.png)
②「共有設定」－「共有ルール」対象オブジェクトの共有ルール作成
<font color="Red">あるグループ所属のユーザ作成したレコードをグループの全員共有
設定できる所属また共有先は「ロール」、「ロール＆下位ロール」と「グループ」のみ</font>
・レコード所有者に基づく
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/eeccca8f-1ab4-5218-4ff4-47bf5be153e3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/5fd9b00e-5fb1-5875-35cf-8292a1901866.png)
・条件に基づく
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/e6add048-b0e2-b877-611c-3c7056094c4c.png)

###共有の直接設定：
レコード所有者が、レコードへのアクセス権がないと思われるユーザに参照および編集権限を付与できるようにします。（レコード手動共有）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/ac5d7c42-6822-f388-b35f-ef57e0b62317.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/424429/11363a7b-0e9b-9b8a-e2ba-4ce9bcbb0de5.png)