| テナントID | 施設を識別する英数字(例: tokyo-daycare-east)。URL の ?tenant= と、Supabase の tenants.slug を一致させます。 |
|---|---|
| RLS | データベース側の「行レベルのアクセス制御」。ログインユーザの施設以外の行は読めないようにする仕組みです(マイグレーションで有効化済み)。 |
| tenants.v1.json | 画面上の施設名・注意書き・AI免責などを、テナントID単位で上書きする静的ファイルです(/config/tenants.v1.json)。 |
public/config/tenants.v1.json に同じIDのブロックを追加し、デプロイする。VITE_SUPABASE_*(必須)・GEMINI_API_KEY(任意)と、Gemini を使う場合は GEMINI_PAID_PLAN_CONFIRMED(必須:true / 1)を設定し再デプロイ(Gemini 有料プランで運用:2026-05-06 移行済)。| 施設の正式名称 | 契約書・表示名の整理。 |
|---|---|
| 問い合わせ窓口 | 職員・家族が困ったときの連絡先(社内)。 |
| 記録・写真の保存方針 | 取得同意・保管期間・閲覧権限(施設規程)。 |
| AI(Gemini)利用の可否 | 利用する場合は職員確認プロセスを文書化。GEMINI_API_KEY はサーバーのみ。 |
tenants に slug・name を登録する(デモ施設以外の本番行)。SQL の例:INSERT INTO public.tenants (slug, name)
VALUES ('あなたのテナントID', '表示名デイサービス')
ON CONFLICT (slug) DO NOTHING;
?tenant= は、未ログイン時の表示・ローカルデモの切り替えにも使います。職員に「ブックマークはこのURLのまま」と伝えてください。リポジトリの public/config/tenants.v1.json に、テナントIDをキーとするオブジェクトを追加します。デプロイ後は https://(本番)/config/tenants.v1.json で取得されます。
"あなたのテナントID": {
"brand_name": "画面に出す施設名",
"public_notice_ja": "ホームに出す注意書き(任意)",
"ai_disclaimer_ja": "職員記録のGemini欄に出す免責(任意)"
}
既存の example-tenant をコピーして編集すると安全です。
SETUP_PRODUCTION.html のとおり、Vercel に VITE_SUPABASE_URL・VITE_SUPABASE_ANON_KEY を入れ、変更後は再デプロイしてください。Gemini を使う場合のみ GEMINI_API_KEY と GEMINI_PAID_PLAN_CONFIRMED を追加します。
docs/compliance/ に、Billing・ログ・監査ログのスクリーンショットと報告書を集約します(施設へ配布する紙資料とは別枠)。本番の先頭URLが分かったら、テナント別QR発行 で index.html?tenant=… のQRを作り、ポスター・説明会資料に載せます。
| 別施設のデータが見える | テナントID・ログインアカウント・profiles.tenant_id の取り違えを疑う。RLS は「ログイン中のユーザの施設」に限定。 |
|---|---|
| tenants.v1 が反映されない | デプロイ直後か、CDN のキャッシュ。ハード再読み込み、またはファイルパス /config/tenants.v1.json を直接確認。 |
| 法的な利用規約 | 利用上の注意(ひな形)をベースに、法務と調整してください。 |