1192.tokyo

本サイトは一部のページでアフィリエイト広告を利用しています。リンク経由で申し込みが発生した場合、運営者に報酬が支払われることがあります。

開発ツール

Supabaseとは?データベースとログイン機能をまとめて借りる仕組みをわかりやすく解説

アプリに人が集まると、データをファイルに書き出しておくやり方では追いつかなくなります。このページでは、データベースが要る理由と、ログインの仕組みまでまとめて借りられるSupabaseの位置づけを説明します。

このページの結論

一言でいうと
データの保存場所と、ログインの仕組みを、まとめて借りられるサービスです。
かかるお金
無料プランで始められる(目安はDB 500MB・ストレージ1GB・月間アクティブユーザー5万人、2026年8月時点)。超えたときの扱いは登録前に料金ページで確認
向いている人
データベースとログイン機能を自分で1から作りたくない人。
向いていない人
データベースの構成を細かく自分で設計・管理したい人。

Supabaseとは

Supabaseは、アプリのデータを保存するデータベースと、ログイン機能(認証)を、まとめて借りられるサービスです。 どちらも1から自分で作ろうとすると手間がかかる部分なので、まとめて用意されているのが特徴です。

ことば データベース アプリが扱うデータ(ユーザー情報や投稿内容など)を、整理して保存しておく仕組みです。
ことば 認証 ログイン・ログアウトや、「このユーザーは誰か」を確認する仕組みのことです。
ハル
ハル 聞く人 データを保存するだけなら、パソコンのファイルに書き出しておけばいい気がするんですが、違うんですか?
ヤドカリ先生
ヤドカリ先生 答える人 自分ひとりで見るだけならそれで足ります。人数が増えると事情が変わってきます。 ノートに手書きで名簿をつけるのと、図書館の貸出システムの違いに近いです。 同時に何人も書き込んだり、条件を指定して探したりする場面で、ノートでは追いつかなくなります。
ハル
ハル 聞く人 じゃあ、たくさんの人が同時に使っても、ぐちゃぐちゃにならないようにする仕組みということですか?
ヤドカリ先生
ヤドカリ先生 答える人 その理解で問題ありません。それがデータベースです。 ただ、用意するとなると保存の仕組みだけでは終わらなくて、 誰がどのデータを見られるかの制限や、壊れたときのバックアップまで考えることになります。
ハル
ハル 聞く人 考えることが多いですね…。それを1から自分で用意するのは、初心者にはつらそうです。
ヤドカリ先生
ヤドカリ先生 答える人 そこをまとめて借りられるのがSupabaseです。データベースに加えて、 ログインの仕組みまで一緒に用意されています。ログイン機能も、自分で作ろうとすると パスワードの扱いなど気をつける点が多い部分なので、任せられる利点は大きいです。
ハル
ハル 聞く人 任せると、困ることもあるんですか?
ヤドカリ先生
ヤドカリ先生 答える人 細かく調整したくなったときに、決められた範囲の外には出られません。 どこまで自分で決めたいかを先に考えておくと、あとで窮屈に感じにくくなります。
ファイルに書き出す場合と、データベースを使う場合
ファイルに保存 データベース
たとえると ノートに手書きで名簿をつける 図書館の貸出システム
同時に何人も書き込む 取り合いになって壊れやすい 順番を整理して受け付ける
条件を指定して探す 端から探す 条件を書いて取り出す
見せる相手を制限する 自分で仕組みを作る 行ごとに制限をかけられる
壊れたときの備え 自分でコピーを取る バックアップの仕組みがある
Supabaseがまとめて引き受ける範囲
自分のアプリ 作りたいものに集中する
  • データベース データの保存と取り出し
  • 認証 ログイン・ログアウト
  • 管理画面 中身を直接見て直せる

この3つを別々に用意する代わりに、1つのサービスから借ります。

特徴

  • データベースとログイン機能を、別々のサービスに分けずにまとめて用意できます。
  • 無料プランがあり、個人の小規模なプロジェクトなら試しやすい範囲(目安はDB 500MB・ストレージ1GB)で使えます。
  • 管理画面からデータの中身を直接確認・編集できます。
  • テーブル ごとに行ごとのアクセス制限( RLS )をかけられます。 有効にしないと、他人のデータまで読める状態のまま公開されるので注意が必要です。

使い方の手順

1

アカウントを作る

公式サイトから登録します。

2

プロジェクトを作る

アプリごとに1つ作ります。作成時にデータベースのパスワードと地域を決めます。

迷いやすいところ: このとき決めるパスワードは、あとから画面で確認できません。控えていないと接続情報を作り直すことになります。地域も後から変えられないので、使う人が多い場所を選びます。

3

テーブルを作る

データベースの中身は、表計算ソフトのシートに似た「テーブル」という表で管理します。ユーザー一覧、投稿一覧のように、保存したいものごとに1枚ずつ作ります。

迷いやすいところ: 項目(列)はあとから足せるので、最初から完璧な形にしようとせず、まず思いつく項目だけで作ります。

4

誰がどのデータを見られるかを設定する

データの1件ずつ(行と呼びます)に「誰なら見てよいか」の制限をかけます。SupabaseではこれをRLSと呼び、テーブルごとに管理画面で有効にしたうえで、「自分が作ったデータは自分だけが見られる」といったルールを追加します。

迷いやすいところ: ここが一番の落とし穴です。制限をかけないまま公開すると、他人のデータまで読める状態になります。ルールの書き方は、開発を頼んでいるAIに「このテーブルにRLSを設定して」と指示すれば用意できます。「動いたから完成」と判断しないでください。

5

アプリと接続する

発行される接続情報を、アプリ側の環境変数として保存します。

迷いやすいところ: キーは2種類発行されます。anon(またはpublishable)キーは公開されても支障がない側、service_role(またはsecret)キーは何でもできてしまう側です。service_roleのキーはブラウザ側のコードに置かず、環境変数としてだけ保存します。心配なときは、AIに「service_roleキーがブラウザ側に出ていないか確認して」と指示して点検できます。

6

別のアカウントで確かめる

自分のアプリを、ログインしていない状態で開きます。次に、テスト用にもう1つアカウントを登録し、そのユーザーでログインして開きます。

迷いやすいところ: どちらの状態でも、最初のユーザーが作ったデータが見えなければ、手順4の制限が効いています。自分のアカウントだけで確認すると、制限が効いていなくても気づけません。

注意点

まとめて用意されている分、細かいデータベースの設定を自分で調整したい場合は、制約を感じる場面があるかもしれません。 どこまでお任せしたいかを、開発を始める前に考えておくと選びやすくなります。

よくある質問

データベースの知識がなくても使えますか?

管理画面から操作できるので、専門知識がなくても始められます。ただし、データの設計についてはある程度の理解が助けになります。

無料で使えますか?

無料プランで始められます。無料枠の範囲(保存できる量など)は変わることがあるので、登録前に公式の料金ページで現在の枠と、超えたときにどうなるかを見ておくと安心して始められます。

ログイン機能は自分で作らなくていいのですか?

Supabaseの認証機能を使えば、ログイン・ログアウトの仕組みを1から作る必要はありません。

まとめ

データの保存場所と、ログインの仕組みを、まとめて借りられるサービスです。

向いている人

データベースとログイン機能を自分で1から作りたくない人。

向いていない人

データベースの構成を細かく自分で設計・管理したい人。