進行状況の追跡を始めよう
Trailhead のホーム
Trailhead のホーム

オブジェクトへのアクセスの制御

学習の目的

この単元を完了すると、次のことができるようになります。
  • 既存のプロファイルを参照し、新しいプロファイルを作成する。
  • プロファイルを使用してオブジェクトへのアクセス権を変更する。
  • プロファイル内のすべての割り当てられたユーザを表示する。
  • 新しい権限セットを作成する。
  • 1 人または複数のユーザに権限セットを割り当てる。

オブジェクト権限の管理

データアクセスを制御する最も簡単な方法は、オブジェクトの特定の種別に対して権限を設定することです(オブジェクトは、リードや取引先責任者のような、レコードのコレクションです)。そのオブジェクトの任意のレコードをユーザのグループが作成、参照、編集、または削除できるかどうかを制御できます。

オブジェクト権限は、プロファイルまたは権限セットを使用して設定できます。ユーザには、1 つのプロファイルと複数の権限セットを設定できます。
  • ユーザのプロファイルによって、ユーザがアクセスできるオブジェクトと、オブジェクトレコードでユーザが実行できる操作 (作成、参照、編集、削除など) が決まります。
  • 権限セットを使用すれば、ユーザに追加の権限を付与したり、アクセスを設定することができます。

プロファイルを使用して、特定の種別のすべてのユーザに必要な最小の権限と設定を付与します。次に、必要に応じて権限セットを使用して追加権限を付与します。プロファイルと権限セットを組み合わせることにより、非常に柔軟にオブジェクトレベルのアクセス権を指定できます。

社員募集アプリケーションのオブジェクト権限

例として、社員募集アプリケーションでオブジェクトレベルのアクセス権を設定する方法を見てみましょう。このアプリケーションには、主に 4 つの種別のユーザがいます。採用担当マネージャ、採用担当者、面接官、標準従業員です。オブジェクトに対して各ユーザ種別はどのような種類のアクセスが必要になるでしょうか?

採用担当マネージャ
採用担当マネージャの Ben が、自分が募集している職種に関連する社員募集レコードへはアクセスできて、その他の社員募集レコード (自分の部下である他の採用担当マネージャが所有しているもの以外) へは、アクセスできないようにする必要があります。また、社会保障番号項目など、Ben が参照する必要のない機密項目もあります。アプリケーション内の主要なカスタムオブジェクトのそれぞれに対して Ben に必要な権限を考えてみましょう。
  • Position — Ben が新しい職種を投稿し、自分が採用担当マネージャである職種のすべての項目を更新および参照できるようにする必要があり、他のマネージャの職種は参照のみできるようにする必要があります。
  • Candidate — Ben が、自分が採用担当マネージャである職種に応募した応募者のみを参照できるようにする必要があります。さらに、Ben は応募者の社会保障番号を参照する理由はないので、この項目は Ben が参照できないように制限する必要があります。
  • Job Application — Ben が、どの応募者が採用または不採用かを示すために求人応募の状況を更新できるようにする必要があります。ただし、求人応募の応募者の一覧や応募者が応募している職種については変更できないようにする必要があります。そのため、Ben が求人応募の参照項目は更新できないようにする必要があります。
  • Review — 応募者について決定を行うために、Ben が、面接官が投稿した審査票を参照し、面接官の審査が偏っていると感じたときにはコメントを記入できるようにする必要があります。同様に、Ben が、自分が面接を行った応募者の印象を覚えておけるように、審査票を作成できるようにする必要もあります。
採用担当者
採用担当者である Mario は、システム内のすべての職種、応募者、求人応募、審査票を作成、参照、変更できる必要があります。また、他のすべての採用担当者が所有している社員募集レコードについても参照および変更できる必要があります。誰が作成したかにかかわらず、どの職種の求人についても、すべての採用担当者が協力し合うためです。
採用担当者が応募者に関する情報を含むレコードを誤って削除してしまわないようにする必要があります。これは、採用に関する意思決定に疑惑が生じた場合に法廷で弁護できるように、社員募集関連のレコードを数年間保存しておくことが、州法や連邦法によって定められているためです。
面接官
Melissa は、高度に技術的な職種への応募者を面接するエンジニアです。Melissa が、自分が面接官に任命された応募者と求人応募のみを参照できるようにする必要があります。また、すべての職種の給与の最大値と最小値およびすべての応募者の社会保障番号は、面接官の仕事には関係のない機密情報であるため、Melissa が参照できないようにする必要があります。
標準従業員
Harry のような従業員は、活動中の採用担当マネージャや面接官ではありませんが、新しい人材を採用する際の最適なリソースであることがよくあります。このため、従業員が募集中の職種を参照できるようにする必要があります。ただし、給与の最大値と最小値の項目は参照できないようにする必要があります。そうしないと、友人に最高額の給与を交渉するように助言するかもしれませんからね。また、Harry が社員募集アプリケーションのその他のレコードを参照できないようにする必要があります。

次に、4 つの種別の各ユーザに必要な権限をまとめました。

カスタムオブジェクト 採用担当者 採用担当マネージャ 面接官 標準従業員
Position (職種) 参照、作成、編集 参照、作成、編集* 参照 (給与の最小値、最大値を除く) 参照 (給与の最小値、最大値を除く)
Candidate (候補者) 参照、作成、編集 参照* (社会保障番号を除く) 参照* (社会保障番号を除く)
Job Application (求人応募) 参照、作成、編集 参照、編集 (参照項目を除く) 参照*
Review (審査) 参照、作成、編集 参照、作成、編集 参照**、作成、編集**

* 採用担当マネージャや面接官が担当する職種に関連するレコードのみ。

** 面接官が所有するレコードのみ。

以降、このモジュールでは、プラットフォームを使用して社員募集アプリケーションにこれらのルールを実装する方法について学習します。後ほど説明しますが、これにはオブジェクト、項目、レコードの 3 つすべてのレベルでセキュリティのコントロールを設定する必要があります。

プロファイルを使用したアクセスの制限

ユーザは、どのデータと機能にアクセスできるかを制御する 1 つのプロファイルを持ちます。プロファイルは、設定と権限のコレクションです。プロファイル設定はユーザが参照できるデータを決定し、権限はそのデータに対してユーザが実行できる操作を決定します。
  • ユーザのプロファイル内の設定は、ユーザが特定のアプリケーション、タブ、項目、またはレコードタイプを参照できるかどうかを決定します。
  • ユーザのプロファイル内の権限は、特定の種別のレコードの作成または編集、レポートの実行、アプリケーションのカスタマイズをユーザが実行できるかどうかを決定します。

プロファイルは通常、ユーザの職務 (システム管理者、採用担当者、採用担当マネージャなど) と一致しますが、Salesforce 組織にとって意味があるものであれば、何に対してもプロファイルを設定できます。1 つのプロファイルを複数のユーザに割り当てることができますが、ユーザは同時に 1 つのプロファイルしか持つことができません。

標準プロファイル

プラットフォームには、一連の標準プロファイルが含まれます。いくつかの例を次に挙げます。

  • 参照のみ
  • 標準ユーザ
  • マーケティングユーザ
  • 契約管理者
  • システム管理者
各標準プロファイルには、プラットフォーム上で使用できるすべての標準オブジェクトのデフォルトの権限のセットが含まれます。たとえば、標準ユーザはレコードを作成および編集できる一方で、参照のみのユーザはレコードを参照できますが、作成や編集はできません。システム管理者プロファイルでは、最も幅広くデータにアクセスすることができ、Salesforce に最も多くの設定とカスタマイズを行うことができます。また、システム管理者プロファイルには、2 つの特別な権限が含まれます。
  • すべてのデータの参照
  • すべてのデータの編集

これらの権限は他のすべての共有設定を上書きするため、システム管理者以外のプロファイルに割り当てる場合には注意が必要です。すべての標準プロファイルとカスタムプロファイルは、[設定] に一覧表示されます。

標準プロファイルのオブジェクト権限は編集できません。ただし、既存のプロファイルをコピーして、それを新しいプロファイルの基盤として使用し、必要に応じてアプリケーションやシステムの設定を調整できます。たとえば、社員募集アプリケーションでは、採用担当者、面接官、採用担当マネージャのそれぞれに 1 つずつ、全部で 3 つの新しいプロファイルを作成することが考えられます。さらに、各プロファイルを設定して、特定のロールに必要な種別のデータアクセス権を付与します。次に、必要に応じて権限セットを使用して追加権限を付与できます。

メモ

メモ

組織でのプロファイルの機能は、ユーザのライセンスの種類によって異なります。

プロファイルの管理

プロファイルの概要ページが 1 つのプロファイルのすべての設定と権限への開始点となります。[設定] で [クイック検索] ボックスを使用して [プロファイル] を検索し、表示するプロファイルをクリックします。

プロファイルの概要ページ

プロファイルの作成

プロファイルを作成する最も簡単な方法は、作成するプロファイルと似た既存のプロファイルをコピーし、それを変更することです。
Salesforce には拡張プロファイルユーザインターフェースがあり、これを使用してプロファイル設定を容易に検索して変更できます。この演習ではこれを使用します。そのためには、[設定] の [クイック検索] ボックスで「ユーザ管理設定」を検索し、[拡張プロファイルユーザインターフェース] を有効化します。
ユーザプロファイルのリスト
  1. [設定] で、[クイック検索] ボックスを使用して [プロファイル] を検索します。
  2. 作成するプロファイルに似たプロファイルの横にある [コピー] をクリックします。
  3. 新しいプロファイルに名前を付けて、保存します。

プロファイルの割り当て

プロファイルを作成したら、ユーザのセットのニーズに一致するようにプロファイルをカスタマイズし、そのユーザにプロファイルを割り当てます。
  1. [設定] で [プロファイル] を検索します。
  2. プロファイルを選択し、[編集] をクリックします。
  3. このユーザ種別で可能な最も制限の厳しい設定と権限を指定し、保存します
    (必要なことをユーザが実行できなくなるという心配は不要です。後で権限セットを付与することによって、そのユーザの可能性を広げることができます)。
  4. [設定] で [ユーザ] を検索し、いずれかのユーザの横にある [編集] をクリックします。
  5. [プロファイル] ドロップダウンから、設定したプロファイルを選択して、保存します。

権限セットを使用したアクセス権の付与

権限セットは、さまざまなツールと機能へのアクセス権をユーザに付与する設定と権限のコレクションです。権限セットの設定と権限はプロファイルにも含まれますが、権限セットは、ユーザのプロファイルを変更せずにユーザの機能アクセス権を拡張します。

権限セットを使用すれば、組織内のさまざまなアプリケーションやカスタムオブジェクトへのアクセス権を簡単に付与でき、不要になったアクセス権を簡単に外すことができます。

ユーザには、1 つのプロファイルしか設定できませんが、権限セットは複数設定できます。

2 つの一般的な目的で権限セットを使用します。それは、カスタムオブジェクトまたはアプリケーションへのアクセス権を付与することと、特定の項目に対する一時的または長期的な権限を付与することです。

カスタムオブジェクトまたはアプリケーションへのアクセス権を付与する。
組織内に、基本的な職務が同じユーザが多数いるとします。それらのユーザすべてに 1 つのプロファイルを割り当てて、業務に必要なすべてのアクセス権を付与できます。しかし、そのうちの数人のユーザは特別なプロジェクトに携わっていて、他には誰も使用しないアプリケーションへのアクセス権が必要です。さらに、別の数人のユーザは、そのアプリケーションへのアクセス権と、最初のグループには必要ではない別のアプリケーションへのアクセス権が必要です。プロファイルしか使用できない場合、数人のユーザのニーズに合わせたプロファイルを追加で作成するか、元のプロファイルにアクセス権を追加し、必要ないユーザもそれらのアプリケーションが使用できてしまうリスクを受け入れる必要があります。いずれの選択肢も理想的ではありません。組織が成長過程にあり、ユーザのニーズが頻繁に変わる場合は、なおさら不都合です。
特定の項目に対する権限を付与する。
Tom というユーザが、同僚の休暇中に、ある項目への編集アクセス権が一時的に必要だとします。この場合、その項目へのアクセス権を付与する権限セットを作成し、その権限セットを Tom に割り当てることができます。Tom の同僚が休暇から帰ってきて、Tom にその項目へのアクセス権が必要なくなったときには、単に Tom のユーザレコードから権限セットの割り当てを削除します。
メモ

メモ

ユーザのベースプロファイルに権限がある場合、その権限を、そのユーザに権限セットを割り当てることで削除することはできません。権限を使用して、権限の追加のみを行えます。権限を外すには、ユーザのベースプロファイルから、およびユーザに設定されている可能性があるすべての権限セットから権限を削除する必要があります。

権限セットの管理

権限セットの概要ページは、権限セットのすべての権限への開始点となります。権限セットの概要ページを開くには、[設定] で [権限セット] を検索して、表示する権限セットを選択します。各権限セットの権限と設定は、アプリケーション設定、システム設定、オブジェクト権限、および項目権限に整理されます。

[権限セット概要] ページ

権限セットを作成する

権限セットを作成して、特定のユーザに対して、既存のプロファイルの権限に加えて追加の権限を付与できます。その際、既存のプロファイルを変更したり、新しいプロファイルを作成したり、システム管理者プロファイルを付与したりする必要はありません。
  1. [設定] で [クイック検索] ボックスを使用して、[権限セット] を検索します。
  2. コピーするセットの横にある [コピー] をクリックします。
    メモ

    メモ

    コピーした権限セットには、コピー元と同じユーザライセンスがあります。異なるライセンスを持つセットを作成するには、代わりに [新規] をクリックします。

  3. 表示ラベルと説明を入力します。
    API 参照名は API および管理パッケージが使用する一意の名前です。表示ラベルが自動的に複製されていますが、変更できます。
  4. 新しい権限セットの場合は、ユーザライセンスオプションを選択します。
    • この権限セットを異なるライセンスを持つ複数のユーザに割り当てる場合は、[--なし--] を選択します。
    • 1 つの種類のライセンスを持つユーザのみがこの権限セットを使用する場合は、そのユーザライセンスを選択します。
  5. [保存] をクリックして、権限セットの概要ページに戻ります。
  6. [権限セット] ツールバーで、[割り当ての管理] をクリックし、[割り当てを追加].をクリックします。
  7. この権限セットに割り当てるユーザを選択し、[割り当て] をクリックします。
    [割り当ての概要] ページでメッセージを確認します。ユーザがまったく割り当てられていない場合、[メッセージ] 列に理由が表示されます。
  8. [完了] をクリックして、権限セットに割り当てられたユーザのリストに戻ります。

社員募集アプリケーションのプロファイルと権限セット

プロファイルと権限セットの作成と変更の方法を学習しました。次に、社員募集アプリケーションで適切なオブジェクトレベルのアクセス権を設定しましょう。このアプリケーションには、主に 4 つの種別のユーザがいます。採用担当者、採用担当マネージャ、面接官、標準従業員です。

各種別のユーザにプロファイルと権限セットのどちらを作成するかについては、次のように考えます。

採用担当者
採用担当者は、明確に定義された職務であり、他のユーザとは異なる種別のデータへのアクセス権が必要です。したがって、採用担当者にはプロファイルを作成するのが適切です。
採用担当マネージャ
ほとんどの組織では、営業部門の採用担当マネージャとエンジニアリング部門の採用担当マネージャでは、異なる種別のデータへのアクセス権が必要です。ただし、採用データ (審査、応募者、職種、求人応募) については、すべての採用担当マネージャに同じ種別のアクセス権が必要です。したがって、さまざまな種別のユーザに割り当てられる採用担当マネージャ権限セットを作成するのが便利です。
面接官
どの部署のどの職務の従業員でも、指名されて面接を行う可能性があります。この場合、限定された期間のみ採用情報へのアクセス権が必要となります。権限セットを使用すれば、権限を必要に応じて簡単に付与したり取り消したりできるため、面接官には権限セットを定義するのが適切です。
標準従業員
これは、特定の職務に対応しない汎用グループです。大部分の従業員向けに基本プロファイルを作成し、ごく一部のデータへのアクセス権を付与します。その後、従業員の専門分野に応じて、必要な権限セットを作成して割り当てます。

これまでの説明から、社員募集アプリケーションのオブジェクト権限の最適な設定方法は、次のようになります。

  1. 採用担当者と標準従業員の 2 つのプロファイルを作成します。
  2. 採用担当マネージャと面接官の 2 つの権限セットを作成します。
  3. 採用担当マネージャと面接官に標準従業員プロファイルを割り当ててから、職務に応じた権限セットを付与します。