Supabase プロジェクトが世界に見せているものを確かめる

anon キーは公開される前提のものです。守っているのは Row Level Security。そして、それを素通りできる唯一のキーは、決してブラウザに届いてはいけません。攻撃者と同じように外側から両方を確認します。データには触れません。

無料・登録不要。基本診断は、通常のブラウザと同じリクエストしか送りません。

完全なレポート例を見る

確認すること

5 分で自分で確認する

私たちが外から確認することは、すべてご自身のダッシュボードとターミナルで確認できます。必ずご自身のプロジェクトだけで行ってください。

  1. Row Level Security のないテーブルを一覧にする

    Supabase ダッシュボード → SQL Editor。デフォルトの権限付与が残っていれば、rowsecurity = false の public テーブルはどれも anon キーで読めます。Security Advisor(Advisors → Security)にも同じ一覧が表示されます。

    select tablename, rowsecurity
    from pg_tables
    where schemaname = 'public'
    order by rowsecurity, tablename;
  2. 見知らぬ人として試す

    サイトにある anon キーを使います。すべての訪問者が持っているのと同じキーです。これで行が返ってくるなら、誰に対しても返ってきます。

    curl 'https://<project>.supabase.co/rest/v1/<table>?select=*&limit=1' \
      -H "apikey: <anon key>" \
      -H "Authorization: Bearer <anon key>"
  3. secret キーがブラウザに届いていないか確かめる

    公開中のサイトで DevTools を開き、読み込まれたすべてのファイル(Cmd/Ctrl + Option/Alt + F)で service_role と sb_secret_ を検索します。1 件でも見つかったら、Project Settings → API でキーをローテーションし、そのコードを Edge Function に移してください。

  4. RLS を有効にしてポリシーを追加する

    ポリシーなしで RLS を有効にすると、すべてがブロックされます。テーブルの使い方に合ったポリシーを追加してください。ユーザープロフィールのテーブルなら:

    alter table public.profiles enable row level security;
    
    create policy "read own profile"
    on public.profiles for select
    using (auth.uid() = id);

AI が適用できる修正

レポートのプロンプトはテーブル名と具体的な問題を挙げ、アプリが各テーブルをどう使っているかに合ったポリシーで RLS を有効にするよう、AI に指示します。

app.example.com の次の問題を修正してください。

1. テーブル "profiles" が anon キーに 1,240 行を返しています。
   Row Level Security を有効にし、ユーザーが自分の行だけを select できるポリシーを追加してください(auth.uid() = id)。

2. テーブル "orders" が anon キーに 87 行を返しています。
   RLS を有効にし、select は注文の所有者だけに許可してください。

完了したら再診断:https://scanyoursite.app/ja?check=app.example.com

新しいテーブルは、新しいリスク

マイグレーションのたびに、ポリシーのないテーブルが増えるかもしれません。Pro では定期診断のたびにテーブル診断も実行され、新たに公開状態になったテーブルはその日のうちにお知らせします。

プランを見る

よくある質問

テーブル診断にドメイン確認が必要なのはなぜですか?

データベースへの問い合わせは、ブラウザがページで行うことの範囲を超えます。そのため所有者に対してのみ行います。確認は DNS レコード、ファイル、メタタグのいずれかで行えます。

データは保存されますか?

いいえ。HEAD リクエストで行数を数え、保存するのは行数とテーブル名だけです。

anon キーは漏えいですか?

いいえ。設計上、公開されるものです。問題ではなく参考情報として報告します。

バイブコーダー向け

URL を貼るだけ。1分ほどで一覧が届きます。

どの指摘にも、あなたにとっての影響と直し方が付いています。AI コーディングツールにそのまま適用させるプロンプトとしても受け取れます。

無料・登録不要。基本診断は、通常のブラウザと同じリクエストしか送りません。