![見出し画像](https://assets.st-note.com/production/uploads/images/174242070/rectangle_large_type_2_69cd57f1798cb7348d23bb33d5ab05d9.png?width=1200)
【2024年度最新版】 Salesforce認定Sharing and Visibility アーキテクト100問(問題+解説集)
Salesforce 認定 Sharing and Visibility アーキテクトで過去出題された問題より100問を抜粋して丁寧な解説と合わせて紹介します。
Salesforce 認定 Sharing and Visibility アーキテクト資格取得を目指す方に向けに、実践的な問題を抜粋していますので、効率的な学習のサポートを提供しています。
問題と解答だけでよい方は、こちらを参照してください。
ここから問題と解答になります。
1.ユーザーが Files Home プライベート ライブラリにアップロードした PDF を表示できるのは誰ですか?
A. ユーザーおよびすべてのデータの表示権限を持つユーザー。
B. ロール階層でユーザーとその上位のユーザー。
C. ユーザーのみ。
正答:C
解説:
A. ユーザーおよびすべてのデータの表示権限を持つユーザー。
すべてのデータの表示権限を持つユーザーであっても、ユーザーのプライベートライブラリに保存されたファイルにはアクセスできません。Salesforce の Files Home のプライベートライブラリは、デフォルトで所有者のみにアクセスを制限するため、この選択肢は誤りです。
B. ロール階層でユーザーとその上位のユーザー。
プライベートライブラリに保存されたファイルは、ロール階層に基づいて共有されません。そのため、上位ユーザーであってもアクセスすることはできません。この選択肢は誤りです。
C. ユーザーのみ。
Files Home のプライベートライブラリにアップロードされたファイルは、そのユーザー本人のみがアクセスできます。組織の他のユーザーは、明示的に共有されない限りアクセスできません。このため、正しい選択肢です。
2.カスタマー コミュニティを設定してコラボレーションを有効にした後、アーキテクトは、顧客がアカウント内の他の顧客からの Chatter 投稿にすぎないことに気付きました。
すべての顧客からのチャット投稿を表示できるようにするには、アーキテクトは何をする必要がありますか?
A. コミュニティ ユーザーの可視性を有効にします。
B. Chatter 投稿の [すべて表示] を設定します。
C. Chatter スーパーユーザーを有効にします。
D. 内部ユーザーの可視性を有効にします。
正答:A
解説:
A. コミュニティ ユーザーの可視性を有効にします。
デフォルトでは、カスタマー コミュニティのユーザーは、同じアカウントに属する他のユーザーのみを認識できます。他の顧客の Chatter 投稿を表示するには、「コミュニティ ユーザーの可視性 (Community User Visibility)」 を有効にする必要があります。この設定を有効にすることで、すべての顧客が相互に Chatter 投稿を閲覧できるようになります。正しい選択肢です。
B. Chatter 投稿の [すべて表示] を設定します。
Chatter の表示設定を変更しても、異なるアカウントに属するユーザーの投稿は表示されません。アクセス制御の問題は「コミュニティ ユーザーの可視性」設定で管理されるため、この選択肢は誤りです。
C. Chatter スーパーユーザーを有効にします。
Chatter スーパーユーザーは、特定の権限を持つユーザー向けの機能であり、すべての投稿を閲覧できるわけではありません。また、すべての顧客が Chatter スーパーユーザーになるわけではないため、この選択肢は誤りです。
D. 内部ユーザーの可視性を有効にします。
この設定は、社内ユーザー間の可視性を管理するものであり、顧客同士の可視性とは関係ありません。この選択肢は誤りです。
3.Universal Containers は、カスタマー コミュニティ センス タイプを使用して、顧客向けのコミュニティを実装しました。彼らは、アカウント レコードを参照するサービス リクエストを格納するカスタム オブジェクトを実装しました。サービス要求オブジェクトの組織全体の既定の外部アクセスは、プライベートに設定されています。Universal Containers は、顧客がコミュニティを通じて自分のアカウントのサービス リクエストを確認できるようにしたいと考えています。顧客は、他のアカウントのサービス リクエストを確認するべきではありません。アーキテクトはこれを実装するためにどの Salesforce 機能を使用できますか?
A. 手動共有を使用して、新しいコミュニティ ユーザーが追加されたときにサービス リクエストを手動で共有します。
B. 共有セットを使用して、コミュニティ ユーザーのプロファイルに基づいて、アカウントに関連するサービス要求を共有します。
C. 共有ルールを使用して、役割に基づいてコミュニティ ユーザーにサービス要求を共有します。
D. Apex Managed Sharing を使用して、アカウントに関連するサービス要求を適切なコミュニティ ユーザーと共有します。
正答:B
解説:
A. 手動共有を使用して、新しいコミュニティ ユーザーが追加されたときにサービス リクエストを手動で共有します。
手動共有は管理者や所有者が個別に設定する必要があり、コミュニティの自動化には適していません。特に新しいユーザーが追加されるたびに手動で共有設定を行うのは、管理負担が大きいため不適切です。この選択肢は誤りです。
B. 共有セットを使用して、コミュニティ ユーザーのプロファイルに基づいて、アカウントに関連するサービスリクエストを共有します。
共有セットは、カスタマーコミュニティで ユーザーのプロファイル情報を基にレコードを共有 するための機能です。組織全体の既定の外部アクセスが「プライベート」に設定されていても、ユーザーのプロファイルに基づいて適切なデータアクセスを提供できます。顧客が 自分のアカウントのサービスリクエストのみ を確認できるようにする要件を満たしているため、この選択肢が正解です。
C. 共有ルールを使用して、役割に基づいてコミュニティ ユーザーにサービスリクエストを共有します。
共有ルールは、ロール階層や公開グループを利用したデータ共有 に適用されます。しかし、カスタマーコミュニティでは、顧客が自分のアカウントのデータのみを閲覧できるようにする必要があり、ロールベースの共有は適切ではありません。この選択肢は誤りです。
D. Apex Managed Sharing を使用して、アカウントに関連するサービスリクエストを適切なコミュニティ ユーザーと共有します。
Apex Managed Sharing を使用すれば、カスタムロジックを実装してレコード共有を制御できます。しかし、今回の要件では 共有セット を利用することで十分に要件を満たせるため、Apex Managed Sharing を使う必要はありません。この選択肢は誤りです。
4.Universal Containers には次の要件があります。 カスタム Loan オブジェクトでは、Org-Wide Defaults を Private に設定する必要があります。ローン レコードの所有者は、ローン オリジネーション オフィサーになります。ローン レコードは、ローンごとに特定の引受業者と共有する必要があります。アンダーライターは、割り当てられたローン レコードのみを表示する必要があります。これらの要件を満たすためにアーキテクトは何を推奨する必要がありますか?
A. 基準に基づく共有ルールを使用して、基準に基づく共有で定義された基準に基づいてローン オブジェクトを引受会社と共有します。
B. Loan オブジェクトから User オブジェクトへの参照関係を作成します。Loan オブジェクトでトリガーを使用して、Loan 共有オブジェクトに対応するレコードを作成します。
C. Loan オブジェクトから User オブジェクトへの主従関係を作成します。ローン記録は引受会社と自動的に共有されます
D. 共有理由で定義された条件に基づいて、ローンを引受人と共有するローン オブジェクトで Apex 共有理由を作成します。
正答:B
解説:
A. 基準に基づく共有ルールを使用して、基準に基づく共有で定義された基準に基づいてローン オブジェクトを引受会社と共有します。
共有ルールは、ロールや公開グループを利用して特定の条件を満たすレコードを共有するのに適しています。しかし、本件ではローンレコードごとに特定の引受業者と共有する必要があり、共有ルールではこの要件を満たせません。この選択肢は誤りです。
B. Loan オブジェクトから User オブジェクトへの参照関係を作成します。Loan オブジェクトでトリガーを使用して、Loan 共有オブジェクトに対応するレコードを作成します。
Apex トリガーを活用してLoan レコードと引受業者の関係をプログラム的に管理することで、必要な共有設定を自動化できます。共有オブジェクトに適切な共有レコードを作成することで、必要なユーザーのみがアクセスできるようになります。この選択肢が正解です。
C. Loan オブジェクトから User オブジェクトへの主従関係を作成します。ローン記録は引受会社と自動的に共有されます。
主従関係 (Master-Detail Relationship) は、親レコードと子レコードの関係を定義し、親レコードの所有者が子レコードの所有権も持つようにします。しかし、Loan レコードの所有者はローンオリジネーションオフィサーであり、主従関係を作成すると要件に合わなくなるため、この選択肢は誤りです。
D. 共有理由で定義された条件に基づいて、ローンを引受人と共有するローン オブジェクトで Apex 共有理由を作成します。
Apex Managed Sharing は、Apex を使用してレコード共有を細かく制御する方法ですが、今回の要件ではトリガーを活用した共有オブジェクトの更新の方が適しているため、この選択肢は誤りです。
5.Universal Containers (SC) のセールス エグゼクティブは、リスト ビューを作成して、リスクのある大規模な商談の商談をフィルター処理したいと考えています。これらのリスト ビューは、問題のある商談の成立を専門とする特定の幹部のみが利用できるようにする必要があります。UC はこの要件をどのように解決できますか?
A. リスト ビューをロール階層内の適切なロールと共有します。
B. リスト ビューを適切な公開グループと共有します。
C. リスト ビューを適切な個々のユーザーと共有します。
D. リスト ビューを適切なキューと共有します。
正答:B
解説:
A. リスト ビューをロール階層内の適切なロールと共有します。
リストビューはロール階層を使用して直接共有することはできません。この選択肢は誤りです。
B. リスト ビューを適切な公開グループと共有します。
Salesforce では、リストビューを 公開グループ を使用して共有できます。特定の幹部だけがアクセスできるグループを作成し、そのグループとリストビューを共有することで要件を満たせます。この選択肢が正解です。
C. リスト ビューを適切な個々のユーザーと共有します。
リストビューを個々のユーザーと共有することは可能ですが、大規模な組織では管理が煩雑になります。公開グループを使用したほうが運用が楽になるため、この選択肢は最適ではありません。
D. リスト ビューを適切なキューと共有します。
キューはレコードの所有権を管理するための機能であり、リストビューの共有には関係ありません。この選択肢は誤りです。
6.Universal Containers には、Opportunity オブジェクトの公開読み取り専用共有設定があります。取引先チームのメンバーを取引先に追加する際に、ユーザーに表示される商談アクセス オプションは何ですか?
A. 読み取り専用
B. 非公開で読み取り専用
C. プライベート
D. 読み取り専用および読み取り/書き込み
正答:D
解説:
A. 読み取り専用
商談の組織全体の既定 (OWD) 設定が「公開読み取り専用」なので、チームメンバーに「読み取り専用」のアクセスを付与することは可能です。しかし、追加のオプションがあるため、この選択肢だけでは不十分です。
B. 非公開で読み取り専用
「非公開で読み取り専用」という設定は存在しません。この選択肢は誤りです。
C. プライベート
商談の組織全体の既定が「公開読み取り専用」なので、「プライベート」のオプションは表示されません。
D. 読み取り専用および読み取り/書き込み
取引先チームのメンバーを追加する際、商談のアクセスレベルは「読み取り専用」または「読み取り/書き込み」のどちらかを選択できます。このため、正解はこの選択肢です。
7.Universal Containers (UC) の営業担当者は、アカウント マネージャーの Default Opportunity チームのメンバーです。アカウント マネージャーが商談を作成し、営業担当者がその商談チームに追加されます。
営業担当者は、営業担当者が支援していた商談レコードにアクセスできなくなったことについて不満を漏らしています。
この問題の原因は何ですか?
A. アカウント チームが変更されたため、商談チームのメンバーがアカウント チームのメンバーに置き換えられました。
B. 営業担当者は商談チームから手動で削除されました。
C. 営業担当者は、同じ取引先の別の商談レコードで、商談チームから削除されました。
D. 「デフォルトの商談チーム」がレコードにアクセスできる場合、商談の所有者は有効化/無効化できます
正答:B
解説:
A. アカウント チームが変更されたため、商談チームのメンバーがアカウント チームのメンバーに置き換えられました。
アカウント チームの変更が直接商談チームのメンバーを置き換えるわけではありません。このため、この選択肢は不正解です。
B. 営業担当者は商談チームから手動で削除されました。
商談チームのメンバーが削除されると、そのメンバーは商談にアクセスできなくなります。問題の状況を説明する最も可能性の高い原因なので、正解です。
C. 営業担当者は、同じ取引先の別の商談レコードで、商談チームから削除されました。
別の商談レコードで削除されたことは、他の商談レコードのアクセス権には影響しません。このため、この選択肢は誤りです。
D. 「デフォルトの商談チーム」がレコードにアクセスできる場合、商談の所有者は有効化/無効化できます。
デフォルトの商談チームのメンバーが手動で削除された場合、レコードへのアクセスは維持されません。しかし、これは直接的な原因とは言えません。
8.コントローラーが静的クエリではなく動的クエリを使用し、変数をバインドする場合、どのような脆弱性が存在する可能性がありますか?
A. SOQL インジェクション。
B. バッファ オーバーフロー攻撃。
C. クロスサイト スクリプティング。
D. レコード アクセス オーバーライド。
正答:A
解説:
A. SOQL インジェクション。
動的 SOQL クエリでは、ユーザー入力を適切にサニタイズしないと、攻撃者がクエリを操作して不正なデータ抽出や破壊的なクエリを実行できる可能性があります。これは SOQL インジェクションと呼ばれる脆弱性で、正解です。
B. バッファ オーバーフロー攻撃。
Salesforce の SOQL クエリは、C 言語などの低レベルの言語とは異なり、バッファオーバーフロー攻撃を受けることはありません。このため、誤りです。
C. クロスサイト スクリプティング。
クロスサイト スクリプティング (XSS) は、ユーザー入力が適切にエスケープされない場合に発生する問題で、SOQL とは関係ありません。
D. レコード アクセス オーバーライド。
SOQL を使用することでレコードアクセスの仕組みを変更できるわけではありません。このため、不正解です。
9.Universal Containers の営業担当者は、営業プロセスの一環として、大きすぎて電子メールで共有できない大きなファイルを作成することがあります。ユーザーが顧客とファイルを共有できるようにしたいと考えていますが、CISO は共有するファイル リンクをパスワードで保護するよう要求しています。
これはどのように達成できますか?
A. 顧客がファイルにアクセスできるようにエクスペリエンス クラウド サイトをセットアップします。チャットで顧客とファイルを共有します。その後、顧客はサイトにログインしてコンテンツにアクセスできます。
B. 営業担当者はコンテンツ配信を作成できます。ユーザーは作成中に、コンテンツへのアクセスにパスワードを要求するオプションを選択する必要があります。
C. パスワード保護機能を備えたファイル共有アプリを選択し、営業担当者が顧客ごとに個別のリンクとパスワードを生成できるように設定します。
D.Salesforce Filesを使用して、ファイルのリンクを生成し、共有オプションを制御してパスワード保護オプションがある外部共有設定を有効にし、顧客にはパスワード付きのリンクを送信して安全にアクセスさせます。
正答:B
解説:
A. 顧客がファイルにアクセスできるようにエクスペリエンス クラウド サイトをセットアップします。チャットで顧客とファイルを共有します。その後、顧客はサイトにログインしてコンテンツにアクセスできます。
エクスペリエンス クラウドサイトは認証を必要とする場合がありますが、CISO の要件である「パスワード保護」を提供する直接的な方法ではありません。
B. 営業担当者はコンテンツ配信を作成できます。ユーザーは作成中に、コンテンツへのアクセスにパスワードを要求するオプションを選択する必要があります。
Salesforce の「コンテンツ配信」機能を使用すると、ファイルリンクを生成し、パスワード保護を適用できます。CISO の要件を満たす適切な方法なので、正解です。
C. パスワード保護機能を備えたファイル共有アプリを選択し、営業担当者が顧客ごとに個別のリンクとパスワードを生成できるように設定します。
外部のファイル共有アプリの使用は可能ですが、Salesforce のネイティブ機能を使うことが求められているため、適切ではありません。
D. Salesforce Files を使用して、ファイルのリンクを生成し、共有オプションを制御してパスワード保護オプションがある外部共有設定を有効にし、顧客にはパスワード付きのリンクを送信して安全にアクセスさせます。
Salesforce Files には、コンテンツ配信のようなパスワード保護の直接的なオプションはありません。そのため、不適切です。
10.Universal Container は、ユーザーが連絡先レコードを編集できるようにするカスタム VF ページを作成しています。開発者は、contact obj の Phone 項目に apex:outputField を使用しました。FLS を持たないユーザーが VF ページにアクセスした場合、どのような動作が予想されますか?
A. レコードの保存中にエラーが発生しました
B. フィールドはページから自動的に削除されます
C. 出力フィールドはユーザーに表示されます
D. ユーザーは電話フィールドに値を入力できます
正答:B
解説:
A. レコードの保存中にエラーが発生しました
FLS (フィールドレベルセキュリティ) によって制限されているフィールドは、ユーザーに表示される前に処理されるため、保存時にエラーが発生することはありません。このため、誤りです。
B. フィールドはページから自動的に削除されます
<apex:outputField> を使用すると、FLS によって制限されているフィールドは自動的に非表示になります。これは Salesforce の標準的な動作であり、正解です。
C. 出力フィールドはユーザーに表示されます
FLS によって制限されているため、フィールドは表示されません。このため、不正解です。
D. ユーザーは電話フィールドに値を入力できます
出力フィールド (outputField) なので、編集はできません。このため、不正解です。
ここから先は
この記事が気に入ったらチップで応援してみませんか?