Tune in to Trailblazers Innovate for Salesforce product news,
demos, and latest roadmaps. Register here.
close
進行状況の追跡を始めよう
Trailhead のホーム
Trailhead のホーム

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

学習の目的

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

オブジェクト権限の管理

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

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

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

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

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

採用担当マネージャ
採用担当マネージャの Ben が、自分が募集している職種に関連する社員募集レコードへはアクセスできて、その他の社員募集レコード (自分の部下である他の採用担当マネージャが所有しているもの以外) へは、アクセスできないようにする必要があります。また、社会保障番号項目など、Ben が参照する必要のない機密項目もあります。アプリケーション内の主要なカスタムオブジェクトのそれぞれに対して Ben に必要な権限を考えてみましょう。

  • Position — Ben が新しい職種を投稿し、自分が採用担当マネージャである職種のすべての項目を更新および参照できるようにする必要があり、他のマネージャの職種は参照のみできるようにする必要があります。
  • Candidate — Ben が、自分が採用担当マネージャである職種に応募した応募者のみを参照できるようにする必要があります。さらに、Ben は応募者の社会保障番号を参照する理由はないので、この項目は Ben が参照できないように制限する必要があります。
  • Job Application — Ben が、どの応募者が採用または不採用かを示すために求人応募の状況を更新できるようにする必要があります。ただし、求人応募の応募者の一覧や応募者が応募している職種については変更できないようにする必要があります。そのため、Ben が求人応募の参照項目は更新できないようにする必要があります。
  • Review — 応募者について決定を行うために、Ben が、面接官が投稿した審査票を参照し、面接官の審査が偏っていると感じたときにはコメントを記入できるようにする必要があります。同様に、Ben は自分が面接した応募者の印象を覚えておけるように、審査票を作成する必要もあります。
採用担当者
採用担当者である Mario は、システム内のすべての職種、応募者、求人応募、審査票を作成、参照、変更できる必要があります。また、作成者に関係なく、採用担当者全員がすべての職種の求人について協力し合うことになるため、Ben は他の採用担当者が所有している社員募集レコードについても参照と変更ができなければなりません。

採用担当者が応募者に関する情報を含むレコードを誤って削除してしまわないようにする必要があります。これは、採用に関する意思決定に疑惑が生じた場合に法廷で弁護できるように、社員募集関連のレコードを数年間保存しておくことが、州法や連邦法によって定められているためです。

面接官
Melissa は、高度に技術的な職種への応募者を面接するエンジニアです。Melissa については、自分が面接を担当する応募者と求人応募のみを参照できるようにする必要があります。また、すべての職種の給与の最大値と最小値およびすべての応募者の社会保障番号は、面接官の仕事には関係のない機密情報であるため、Melissa が参照できないようにする必要があります。

標準従業員
Harry のような従業員は、活動中の採用担当マネージャや面接官ではありませんが、新しい人材を採用する際の最適なリソースであることがよくあります。この場合は、募集中の職種を参照できるが、給与の最大値と最小値の項目は参照できないようにする必要があります。知り合いに給与の最高額を教えて粘って交渉するように助言するかもしれませんからね。また、Harry が社員募集アプリケーションのその他のレコードを参照できないようにする必要もあります。

次に、4 つの種別の各ユーザに必要な権限をまとめました。
カスタムオブジェクト 採用担当者 採用担当マネージャ 面接官 標準従業員
Position (職種) 参照、作成、編集 参照、作成、編集* 参照 (給与の最小値、最大値を除く) 参照 (給与の最小値、最大値を除く)
Candidate (候補者) 参照、作成、編集 参照* (社会保障番号を除く) 参照* (社会保障番号を除く)
Job Application (求人応募) 参照、作成、編集 参照、編集 (参照項目を除く) 参照*
Review (審査) 参照、作成、編集 参照、作成、編集 参照**、作成、編集**

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

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

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

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

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

通常は、ユーザの職務 (システム管理者、採用担当者、採用担当マネージャなど) に合致するようにプロファイルが割り当てられますが、それぞれの Salesforce 組織のニーズに応じて自由に設定できます。1 つのプロファイルを複数のユーザに割り当てることはできますが、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 つの種別のユーザがいます。採用担当者、採用担当マネージャ、面接官、標準従業員です。

各タイプのユーザにプロファイルと権限セットのどちらを作成するかを判断する際の主な考慮事項は次のとおりです。

採用担当者
採用担当者は、明確に定義された職務であり、他のユーザとは異なる種別のデータへのアクセス権が必要です。したがって、採用担当者にはプロファイルを作成するのが適切です。

採用担当マネージャ
ほとんどの組織では、営業部門の採用担当マネージャとエンジニアリング部門の採用担当マネージャでは、異なる種別のデータへのアクセス権が必要です。ただし、採用データ (審査、応募者、職種、求人応募) については、すべての採用担当マネージャに同じ種別のアクセス権が必要です。したがって、さまざまな種別のユーザに割り当てられる採用担当マネージャ権限セットを作成するのが便利です。

面接官
どの部署のどの職務の従業員でも、指名されて面接を行う可能性があります。この場合、限定された期間のみ採用情報へのアクセス権が必要となります。権限セットを使用すれば、権限を必要に応じて簡単に付与したり取り消したりできるため、面接官には権限セットを定義するのが適切です。

標準従業員
これは、特定の職務に対応しない汎用グループです。大部分の従業員向けに基本プロファイルを作成し、ごく一部のデータへのアクセス権を付与します。その後、従業員の専門分野に応じて、必要な権限セットを作成して割り当てます。

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


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