Salesforceで外部IDを使用してレコードをインポートまたは更新しようとした際に、”権限不足”や”外部IDが参照できません”といったエラーが発生することがあります。このようなエラーは、ユーザが外部ID項目へのアクセス権を持っていない、または共有設定によってデータが参照できないことが主な原因です。本記事では、権限セットと共有設定を中心に確認手順を解説します。Salesforceを日常的に利用する業務担当者や、システム管理者の方に役立つ内容です。
【要点】この記事で確認すること
- 最初に見る場所: 外部ID項目の権限設定と共有設定の状態
- 切り分けの軸: ユーザの権限セット/プロファイル、共有ルール、ロール階層、組織全体の共有設定
- 注意点: 権限の変更にはシステム管理者権限が必要です。社内のSalesforce管理者に依頼してください。
ADVERTISEMENT
目次
1. 外部IDで権限不足が発生する原因
外部IDとは何か
外部IDとは、Salesforceのオブジェクトの項目に設定できるフラグの一種で、外部システムとの連携時に一意のキーとして使用されます。例えば、顧客管理システムの識別子を外部IDとして設定し、Data LoaderやAPIを使ってレコードを更新する際に利用します。外部ID項目には、通常の項目と同様に参照権限が必要です。権限がないと、外部IDとして動作せず、エラーが発生します。
権限不足エラーの典型的なパターン
具体的には、以下のようなエラーメッセージが表示されます。
・”外部IDとして使用する項目にアクセスする権限がありません”
・”権限不足のため、操作を完了できません”
これらのエラーは、主に権限セットやプロファイルで外部ID項目へのアクセスが許可されていない、または共有設定によりレコードが見えない場合に発生します。また、外部ID項目を参照できる権限があっても、書き込み権限がないと更新時にエラーになります。
2. 権限セットとプロファイルの確認
権限セットの確認手順
権限セットは、プロファイルに加えて付与できる追加の権限の集まりです。例えば、特定のユーザにだけ外部ID項目へのアクセスを許可したい場合に使用します。確認手順は以下の通りです。
- 設定画面で「権限セット」を検索して開く。
- 対象の権限セットを選択し、「割り当て」タブで該当ユーザが割り当てられているか確認。
- 「オブジェクト設定」で該当オブジェクトの権限(読み取り、作成、編集、削除)が適切に設定されているか確認。
- 特に外部ID項目の「参照」権限がチェックされているか確認。
- 必要に応じて権限セットを編集し、不明な点は管理者に確認。
プロファイルの確認
プロファイルは各ユーザに基本となる権限を定義します。プロファイルで外部ID項目へのアクセスが制限されていないか確認します。標準プロファイルの場合は問題ないことが多いですが、カスタムプロファイルでは注意が必要です。外部ID項目がプロファイルの「オブジェクト権限」で「参照」がオフになっていないか確認してください。
権限セットの作成と割り当て手順
新たに権限セットを作成し、ユーザに割り当てる手順は以下の通りです。
- 設定画面で「権限セット」をクリックし、「新規」ボタンを押します。
- 権限セット名とAPI参照名を入力し、ラベルを設定します(例「外部IDアクセス権限」)。
- 作成後、権限セットの詳細画面で「オブジェクト設定」から該当オブジェクト(例:取引先、商談)を選択し、「編集」をクリックします。
- 必要な権限(読み取り、編集)にチェックを入れ、特に外部ID項目の「参照」権限を確認します。項目レベルセキュリティが適用されている場合は、項目ごとに権限を設定する必要があります。
- 保存後、「割り当て」タブで「割り当ての管理」から対象ユーザ(またはグループ)を選択し、「追加」をクリックします。
- 割り当てが完了したら、該当ユーザでログインし、Data LoaderやAPIで外部ID使用時の動作をテストします。
3. 共有設定の確認
組織全体の共有設定
組織全体の共有設定は、全ユーザに対するデフォルトのアクセスレベルを定義します。外部IDを使用して更新したいオブジェクトの共有設定が「参照のみ」や「非公開」になっていないか確認します。例えば、取引先オブジェクトが「参照のみ」の場合、編集権限が必要な更新操作は権限不足となります。共有設定は「設定」→「共有設定」→「共有ルール」から確認できます。
共有ルールとロール階層
共有ルールによって特定のロールやグループに対してアクセス権が付与されている場合、ユーザが適切なロールに属しているかを確認します。また、ロール階層が適切でないと、下位のロールのユーザが上位のレコードを参照できないことがあります。外部ID更新時には、更新対象のレコードに対する「書き込み」権限が必要です。共有ルールで書き込みを許可しているか確認してください。
共有設定の確認手順
具体的な確認手順は以下の通りです。
- 設定画面で「共有設定」を開きます。
- 「組織の共有のデフォルト」セクションで該当オブジェクトの共有設定を確認します。
- 「共有ルール」タブで、該当オブジェクトに対するルールが存在するか確認し、ルールの内容(アクセス権、対象レコード、アクセス権を持つユーザ)を確認します。
- ユーザのロールを確認し、ロール階層で上位のレコードにアクセスできるか確認します。
- テストユーザで実際にレコードを開いて、編集ボタンが表示されるか確認します。
4. 状況別比較表
以下の表に、権限不足が発生する主な状況をまとめます。
| 状況 | 原因 | 解決策 |
|---|---|---|
| 外部ID項目が参照できない | 権限セットまたはプロファイルで項目の参照権限がない | 権限セットに項目レベルセキュリティで参照権限を追加 |
| 外部IDでレコード検索ができない | 共有設定でレコードが非表示、またはアクセス権がない | 共有ルールの見直し、ロール階層の調整 |
| 外部ID更新時に書き込みエラー | オブジェクトへの編集権限がない、または項目レベルセキュリティで書き込み不可 | 権限セットに編集権限を付与、必要に応じて項目レベルの書き込み権限を追加 |
| Data Loaderで外部ID使用時にエラー | 権限設定と共有設定の両方が原因 | 上記すべてを確認し、不足があれば修正 |
5. よくある失敗パターンと解決策
実際の現場でよくある失敗パターンを紹介します。
失敗パターン1: 外部ID項目が参照不可だが、他の項目は編集できる
この場合、外部ID項目だけに項目レベルセキュリティ(FLS)が適用されており、参照権限が不足している可能性が高いです。権限セットで該当項目の参照権限を有効にしてください。
失敗パターン2: システム管理者は動作するが、一般ユーザはエラーになる
これは権限不足が明らかです。システム管理者は自動的に全権限を持つため動作しますが、一般ユーザは権限セットや共有設定の影響を受けます。一般ユーザに対して権限セットの割り当てや共有ルールの追加が必要です。
失敗パターン3: 権限セットを割り当てたのにまだエラー
権限セットの割り当て後、反映に時間がかかる場合があります。また、プロファイルで制限されていないか二重にチェックします。特にプロファイルの「オブジェクト権限」で編集がオフになっていないか確認してください。プロファイルと権限セットの両方で権限が必要な場合、どちらかが不足するとエラーになります。
6. 管理者に伝えるべき情報
権限不足の問題を解決するために、管理者に以下の情報を伝えるとスムーズです。
- エラーメッセージのスクリーンショットまたは正確なテキスト
- 操作を行ったユーザ名またはユーザID
- 対象のオブジェクト名(例:取引先、商談)
- 使用した外部ID項目名(API参照名)
- 操作の種類(インポート、更新、削除など)
- 使用しているツール(Data Loader、Workbench、Apexなど)
- 権限セットが既に割り当てられている場合はその名称
これらの情報を整理してチケットを起票すると、管理者が原因を特定しやすくなります。
7. よくある質問
Q1: 外部ID項目の権限は権限セットで個別に設定できますか?
はい、権限セットの「項目レベルセキュリティ」から外部ID項目ごとに参照・編集権限を設定できます。ただし、標準項目の外部IDは自動的に権限が付与される場合もありますが、カスタム項目の外部IDは明示的な権限設定が必要です。
Q2: 共有設定を変更すると他のユーザに影響がありますか?
はい、組織全体の共有設定や共有ルールを変更すると、全ユーザのアクセス権に影響を与えるため、慎重に行う必要があります。影響範囲を事前に評価し、必要最小限の変更に留めてください。
Q3: Data LoaderとApexの外部ID使用で権限の扱いは異なりますか?
基本的に同じ権限設定が必要です。Data Loaderは実行ユーザの権限に従います。Apexはシステム権限で実行される場合がありますが、クラスでwith sharingを使用している場合はユーザ権限が適用されます。両方でテストすることを推奨します。
8. まとめ
外部IDを使用する際の権限不足エラーは、権限セットによる項目レベルのアクセス権と共有設定によるレコードアクセス権の両方を確認することで解決できます。まずは権限セットで外部ID項目の参照・編集権限が付与されているか確認し、次に共有設定でユーザが対象レコードにアクセスできるかを確認します。問題が解決しない場合は、管理者に正確な情報を伝えて速やかな対応を依頼してください。定期的に権限を見直すことで、外部IDを活用したデータ連携を安定して運用できるようになります。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】PDFのサムネイルプレビューが表示されない!エクスプローラーの設定とAcrobat環境設定
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
