表示制御
import { Image } from ‘astro:assets’; import setCategory from ’../../../../assets/screenshots/set-category-modal.png’; import wizardDefine from ’../../../../assets/screenshots/wizard-define-types.png’; import wizardDefineMultiple from ’../../../../assets/screenshots/wizard-define-types-multiple.png’; import wizardRoles from ’../../../../assets/screenshots/wizard-assign-roles.png’; import wizardReview from ’../../../../assets/screenshots/wizard-review-deploy.png’; import wizardWelcome from ’../../../../assets/screenshots/wizard-welcome.png’; import wizardHome from ’../../../../assets/screenshots/wizard-home.png’;
表示制御により、管理者はドキュメントカテゴリ(Salesforceのロール階層のロールにマッピング)によってファイルアクセスを制限できます。また、任意のユーザーが個別のファイルをプライベートに設定できます。すべてのフィルタリングは getFilesList() でサーバー側で実行されます — 制限されたファイルが未承認のブラウザに届くことはありません。
ストレージモード要件
Section titled “ストレージモード要件”| Standard | Isolated | |
|---|---|---|
| 標準ファイル関連リストでのファイル表示 | はい | いいえ |
| カテゴリ割り当て | 利用不可 | 利用可能 |
| プライベートに設定 | 利用不可 | 利用可能 |
| ロールベースの表示フィルタリング | 利用不可 | 利用可能 |
Standardモードではジャンクションレコードが作成されないため、カテゴリやプライベートフラグを保存する場所がありません。表示フィルタリングが必要なレコードにはIsolatedに切り替えてください。ストレージモードを参照してください。
ドキュメントカテゴリ
Section titled “ドキュメントカテゴリ”カテゴリとは、誰がそのファイルを閲覧できるかを決定するためにファイルに割り当てられたラベルです。カテゴリは Tucario_Visibility_Rule__mdt レコードに保存され、Configuration Wizardを通じて管理します。
一般的な例:HR Documents、Underwriting Documents、Financial Reports、Legal Contracts、Medical Records。
フィルタリングの仕組み
Section titled “フィルタリングの仕組み”各ルールはカテゴリを許可されたロール DeveloperName 値のリストにマッピングします。各ファイルについて:
- ファイルにカテゴリがない → 全員に表示(デフォルトでオープン)。
- ファイルにカテゴリがあり、ユーザーのロールが許可リストにある → 表示。
- ファイルにカテゴリがあり、ユーザーのロールが許可されていない → 非表示。
- ファイルにカテゴリがあり、ルールが非アクティブ(
Is_Active = false)→ 全員に表示(非アクティブなルールはフィルタリングしません)。 - ユーザーが Manage Categories カスタム権限を持つ → カテゴリフィルタリングをバイパス(常にすべてのファイルを閲覧)。
同じカテゴリを参照する複数のルールは OR ロジックで結合されます — ユーザーは対象カテゴリのいずれかの許可リストにロールがあればパスします。
ファイルへのカテゴリ割り当て
Section titled “ファイルへのカテゴリ割り当て”Manage Categories を持つユーザーは、ファイルのコンテキストメニューからカテゴリを割り当てられます:
- ファイルのコンテキストメニューを開き、Set Category を選択します。
- ピッカーからカテゴリを選択するか、No Category を選択してカテゴリをクリアします。
- ファイルの表示設定は即座に更新されます。
表示ルールの設定
Section titled “表示ルールの設定”App Launcherから Smarter Files by Tucario アプリを開きます。ホーム画面にConfiguration Wizardが表示され、2つのカード(Manage Document Categories と Private Documents)があります。
Manage Document Categories をクリックして3ステップのルールウィザードを開始します。
ステップ1 — ドキュメントタイプの定義
Section titled “ステップ1 — ドキュメントタイプの定義”制御したいドキュメントタイプを追加します。それぞれに名前とオプションの説明があります。
ステップ2 — ロールの割り当て
Section titled “ステップ2 — ロールの割り当て”各ドキュメントタイプについて、そのカテゴリのファイルを閲覧できるロールを選択します。デュアルリストボックスには組織のロール階層が表示されます(最大1000件)。
ステップ3 — 確認とデプロイ
Section titled “ステップ3 — 確認とデプロイ”アクティブおよび無効化されたカテゴリを確認し、Deploy Configuration をクリックします。ウィザードは Metadata.Operations.enqueueDeployment() を呼び出して、ルールを Tucario_Visibility_Rule__mdt レコードとして非同期に書き込み、完了をポーリングします。スピナーが進捗を表示します。
プライベートドキュメント
Section titled “プライベートドキュメント”カテゴリベースのフィルタリングに加えて、任意のユーザーが個別のファイルをプライベートに設定できます — 自分自身と View Private Documents 権限を持つユーザーのみに表示されます。詳細なフローについてはプライベートドキュメントを参照してください。
複合フィルタリングロジック
Section titled “複合フィルタリングロジック”ファイルにカテゴリとプライベートフラグの両方がある場合、両方のチェックをパスする必要があります。getFilesList() の疑似コード:
For each file on the record: 1. Private check: If Is_Private AND user is not Owner_Id AND user lacks "View Private Documents" → HIDE
2. Category check: If Visibility_Category is set AND a matching active rule exists AND user's role is not in Permitted_Roles AND user lacks "Manage Categories" → HIDE
3. Otherwise → SHOW2つのチェックのうち、より制限の厳しい方が優先されます。
| 権限セット | 目的 |
|---|---|
| Tucario Files | 基本アクセス。すべてのユーザーに必要です。アプリ、コントローラー、ジャンクションオブジェクトへのアクセスを付与します。 |
| Tucario - Manage File Categories | Set Categoryメニューへのアクセスおよびカテゴリフィルタリングのバイパス(常にすべてのファイルを閲覧可能)。 |
| Tucario - View Private Documents | 他のユーザーがプライベートに設定したファイルの閲覧。 |
ユースケース
Section titled “ユースケース”- HRドキュメントをHRロールのみに表示し、個人の従業員レコードにはプライベートフラグを使用。
- 財務報告書を、誰がアップロードしたかに関わらず、財務ロールに制限。
- 法的契約書を法務部門のロールのみにアクセス制限し、ドラフト契約書にはプライベートフラグを使用。
- 引受ドキュメントの個人情報を含む内容を、引受担当者ロールに制限。
- 共有レコードの機密添付ファイル — カテゴリが適用されたIsolatedモードの2つ目のコンポーネントインスタンスで、標準ファイル関連リストから完全に非表示に。