2022/06/8

Salesforceの「共有設定」とは?アクセス権限制御の考え方と設定方法をご紹介

 
  

Salesforceにおけるアクセス権限制御とは

Salesforceでは、ログインユーザーが正しくデータにアクセスできるよう、「組織」「オブジェクト」「項目」「レコード」に対して各アクセス権限を制御する必要があります。 今回はその中でも「レコード」に対するアクセス権限の制御方法として、「共有設定」の設定方法をご紹介したいと思います。

Salesforceの「共有設定」とは

Salesforceでは「共有設定」を定義することで、各オブジェクトのレコードに存在するデータに対して、どのユーザーが作成/参照/更新/削除できるのか、を制御することができます。 「共有設定」の設定にあたっては、次の4つの項目を使用してアクセス権限を制御していくことになります。 これらの設定項目を定義する以前に、プロファイルでオブジェクト単位における作成/参照/更新/削除権限のベースが制御されているのでは?と思われる方もいらっしゃるかと思います。 実際、プロファイル自体を細かく分けてアクセス権限を制御することも可能ではありますが、運用・保守などの観点から、プロファイルは最小限に抑え、これら4つの項目を使用してアクセス権限を制御することをお勧めします。

組織の共有設定

各オブジェクトにおけるレコードの所有者/非所有者に対して、参照もしくは更新権限を付与することが可能となります。

ロール階層

「組織の共有設定」で[階層を使用したアクセスを許可]を選択すると、レコード所有者よりも上位のロール階層は該当のレコードを参照もしくは更新することが可能となります。

共有ルールと共有の直接設定

各オブジェクトに対して、作成した条件毎に、参照もしくは更新権限を付与することが可能となります。 レコード毎に、特定のユーザーやグループ単位で、参照もしくは更新権限を付与することが可能となります。

「組織の共有設定」の設定方法

まず、Salesforceへログインしたユーザーが然るべきレコードへアクセスできるよう、「組織の共有設定」を定義する必要があります。
  1. [設定]画面の[クイック検索]より[共有設定]を検索
  2. [組織の共有設定]の[編集]をクリック
  3. オブジェクト毎に各ユーザーに付与するアクセス権限を設定
    • 非公開
    • レコード所有者のみ、該当レコードの参照・更新が可能(レコード所有者以外のユーザーは閲覧不可)
    • 公開/参照のみ
    • レコード所有者のみ、該当レコードの更新が可能(レコード所有者以外のユーザーは閲覧のみ可能)
    • 公開/参照・更新可能
    • 全ユーザーにおいて該当レコードの参照・更新が可能
    • 親レコードに連動
    • 親レコードのアクセス権限に準じて該当レコードの参照・更新が可能
  4. レコード所有者よりも上位のロール階層に対して、レコードを参照もしくは更新権限を付与したくない場合は、[階層を使用したアクセス許可]をオフ
  5. [保存]をクリック
  6. 「ロール階層」の設定方法

    一般に、[組織の共有設定]を行う前に設定する項目となりますが、[組織の共有設定]を行う上で理解しておかなければならない設定となります。新たに作成が必要となった場合は、下記流れでロールを作成しましょう。
    1. [設定]画面の[クイック検索]より[ロール]を検索
    2. [ロールの設定]をクリック
    3. [すべて展開]→[ロールの追加]をクリック
    4. [ロール名]を入力し、上位ロールを選択
    5. [保存]をクリック
    6. 「共有ルール」の設定方法

      [組織の共有設定]の内容だけではアクセス権限設定が不十分である場合、[共有ルール]を作成して、より詳細な権限制御を行います。
      1. [設定]画面の[クイック検索]より[共有設定]を検索
      2. [共有ルール]の[新規]をクリック
      3. [ルールタイプ]を選択
        • レコード所有者に基づく(特定のユーザーが所有するレコードへのアクセスが可能)
        • レコード所有者の所属を選択する
        • 条件に基づく(設定した条件に基づいて誰とレコードを共有するかを設定)
        • 共有するレコード条件を入力
      4. 共有先のユーザーを選択
      5. アクセス権を「参照のみ」もしくは「参照及び更新」より選択
      6. [保存]をクリック
      7. 「共有の直接設定」の設定方法

        [組織の共有設定] 及び[共有ルール]を設定しても要件を満たせない場合、各レコードに対して個別にアクセス権限を設定することができます。 ただし、ユーザー自ら自由に設定できる項目でもあるため、運用・保守の観点から使用は最小限に抑えるような運用ルールを設けることが必要です。 また、Lightning Experienceにおいては取引先、商談、ケース、取引先責任者、リード、カスタムオブジェクトでのみしか使用できないため、使用時には注意しましょう。
        1. 該当レコード画面右上のプルダウンより「共有」をクリック
        2. [検索]ボックスに、追加するグループ、ユーザー、ロールを入力
        3. 共有するレコードに対するアクセス権限を「フルアクセス」「参照・更新」「参照のみ」「非公開」より選択
        4. [保存]をクリック
        5. 正しくアクセス権限を付与し、Salesforceを使いこなそう!

          今回はSalesforceのオブジェクト、レコードに対するアクセス権限制御の方法として、「共有設定」をご紹介しました。 Salesforceは直感的でかつ比較的やりたいことを容易実現できるが故に、個別最適な設定になりがちです。 将来的に、Salesforceを活用して他部署・チームとの連携や外部システムとの連携、また他Salesforce製品を組み合わせての応用も見越して、できる限り標準機能を活用し、シンプルな権限制御を行いましょう。
]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】