[bubble] プライバシールールを使ってデータの保護をしてみる

2021.10.14

Bubbleでは作成したカスタムデータタイプは誰でも読み取りが可能となっています。

公開したい情報だけならそれでもいいですが、名前やメールアドレスなどの公開したくないデータを持つ必要があるアプリでは困りますぅ。

ここでBubbleの機能であるプライバシールールを使うことになります。

これは特定の条件を満たす人にのみデータを表示させる機能です。

プライバシールールを設定してみる

前提(ルール設定前)

単純なデータで試してみます

Todoというデータタイプを作成しました。よくあるTODOリストを登録するやつです。

表示例)

Creatorが違うコンテンツも検索対象となってしまうので、これをプライバシールールによって保護してみたいと思います。

ルールの作成

アプリのDataメニューのPrivacyタブをクリックし、対象のデータタイプを選択してDefine a new ruleをクリックすることで作成できます。

ルールの中には2つの重要な項目があります。

  • 条件:特定の状況にルールが適用されるかどうかを定義
  • 権限:条件を満たしている状況で、ユーザーが見ることができるものの種類

この2つを設定してデータを保護します。

条件の作成

ルールを作成すると

上記画像のように表示されます。Whenの部分がこのルールを適用させる条件です。

この条件は、Yes/Noで評価される式を設定しなくてはいけません。

Todoの作成者だけがみることができる という条件であれば、

Current User is This Todo's Creator という式で判断させることができます。

Data Searchの時と同じで式を作るときには上記の画像のように補完されたものが表示されます・

Everyone else (default permissions)は文字通り、どのルールにも合致しなかった時の権限を表しています。

権限の作成

条件を作成した後、ユーザーに対してどの権限を与えるのか決めていきます。

権限の種類は、

  • View all fields
    • このボックスをチェックすると、ユーザーは、条件を満たす場合に現在のタイプのすべてのフィールドを見ることができます。
    • このボックスをオフにすると、このルールでユーザーが表示可能なフィールドを選択できるようになります。
  • Find this in searches
    • このボックスをオフにすると、タイプの検索結果が表示されないようにできます。
  • View attached files
    • このボックスをオフにすると、タイプにアップロードされたファイルを見えなくできます。
  • Allow auto-binding
    • このボックスをチェックすると、workflowを使わずとも入力と同時にテキストボックスやドロップダウンリストの値を即時更新できるようになります
    • 現在のルールでユーザーが修正できるさまざまなフィールドを選択する必要があります

Todoの内容を作成者だけが検索、表示できるようにする ケースだと、

View all fields と Find this in searchesにチェックを入れます。

ルールの確認

今回追加したルールが効いているか確認してみます。

登録ユーザーのみしか表示できない という簡単なルールにしていますので、ログインユーザーを変更するだけで確認できるはずです。

※ 表示確認は以下

※ 注意点として、プライバシールールはworkflowを使ったデータ更新には適用されないです。

特定のユーザーだけにデータ更新を許可したいといった場合は、workflowのイベントとアクションに条件を追加しないといけません。

最後に

プライバシールールを設定し、データの表示や検索に対しての保護をかけてみました。

複数のルールを追加してより細かな制限もできるので便利かつBubbleでアプリを公開するのであれば必須の機能と言えます。