【Bubble】既存ユーザーが新しい他のユーザーを追加する方法

ノーコードツール「Bubble」で、既存ユーザーが任意のメールアドレスを入力して新しい他のユーザーを追加する方法を紹介します。

この記事を作成した背景として、Bubbleで新規会員登録処理をする際は通常、Sign the user upを使用しますが、それを使うと自動で現在のユーザーはログアウトされてしまい新規追加したユーザーでログインされてしまうので、管理者ユーザーがWordPressのように管理画面から新しいユーザーを追加したいといった要望には微妙に応えられません。

そこで「Create an account for someone else」と「Assign a temp password to a user」と「Send email」を駆使して実装します。この記事では既存ユーザーが新しい他のユーザーを追加する一例を紹介します!

なお、ノーコードBubbleの概要については以下の記事で解説しています。

【公認代理店が解説】ノーコードツールBubbleとは?使い方やデメリット、料金を解説

目次
無料で資料をダウンロード

ノーコード開発お役立ち資料3点セット

計100ページ近い大ボリュームでノーコード開発について解説

  • ノーコード開発会社の選び方
  • EPICsのノーコード受託開発の特徴
  • 支援実績・事例集

    氏名

    法人名

    メールアドレス

    電話番号

    送信ボタンを押すことで、個人情報の取扱いについてに同意したとみなされます

    実装イメージ

    管理画面の新規ユーザー追加ページで、管理者ユーザーはメールアドレスを入力してボタンをクリックします。

    ボタンクリックすると入力したメールアドレスで新規ユーザーを作成し、直後パスワードを再発行し、管理者ユーザーのメールアドレス宛に該当ユーザーのメールアドレスとパスワードを送付するといった想定です。

    ※理想を言えば、管理者ユーザーがメールアドレスだけでなくパスワードも入力できるWordPressのような仕様がベストですがそれを実現する実装は現在検証中なのでまた完成したら記事化したいと思います。

    実装手順

    以下の手順で実装します。

    1. 新規ユーザー登録ページを作成する
    2. 登録ボタンをクリックした時のワークフローを設定する
    3. ログイン情報を該当者に教える

    新規ユーザー登録ページを作成する

    まずは新規ユーザーを登録するためのページを作成します。

    ページ名はuser_newにしました

    上の添付画像のように、メールアドレス入力欄と登録ボタンが最低限必要です。

    登録ボタンをクリックした時のワークフローを設定する

    「新規ユーザーを追加」ボタンをクリックした時のワークフローを設定します。ワークフロー全体像は以下です。

    まず、Step1でCreate an account for someone elseを使い、入力したメールアドレスの値で新規ユーザーを作成します。Step2ではReset relevant inputsでメールアドレス入力欄を空にします。

    Step1でEmailだけでなくPasswordもInput入力値で設定できたら良かったんですが、それができないのでStep3とStep4が必要になりました。Create an account for someone elseで作成したユーザーのパスワードは誰も閲覧できないのです。そのため、Create an account for someone elseを使う時は、該当メールアドレスにパスワード再発行リンクを送付して新規ユーザー自身に新しいパスワードを決めてもらうといった流れで運用している開発者の方が多いとのこと。

    次にStep3で、Assign a temp password to a user(一時的なパスワードをユーザーに割り当てる)を使い、Step1で作成したユーザーの現在のパスワードを削除して新しいパスワードを発行します(自動でパスワードが割り当てられます)。

    Step1で新規作成したユーザーを指定する

    Bubble公式ドキュメントによると、Assign a temp password to a userで発行したパスワードは一時的なパスワードですが有効期限はないため、ユーザーによるパスワードリセット処理をしなければそのパスワードでログインし続けられるようです。

    最後にStep4でSend emailを用い、Step3で生成したパスワードを管理者ユーザーのメールアドレス宛に送付します。

    メール本文は、管理者ユーザーがコピペでそのまま該当のユーザーへログイン情報を共有できるような内容にします。Step3で発行したパスワードはResult of step 3(Assign a temp password…)で取得できます。

    ログイン情報を該当者に教える

    管理者ユーザーはメールアドレスに送られてきた新規ユーザーのログイン情報を該当者に共有してアプリケーションにログインしてもらうといった運用です。

    参考記事

    https://manual.bubble.io/core-resources/actions/account
    https://forum.bubble.io/t/create-account-for-someone-and-assign-temp-password/97282
    https://forum.bubble.io/t/create-user-for-someone-with-email-and-password-without-sending-email-with-temporary-password/301330

    懸念としてこの方のYouTube解説でAssign a temp passwordのセキュリティが指摘されていたので実際に運用する際はバックエンドワークフローを使うなど考慮しなければならない模様です。

    【日本最大級のノーコード開発実績】
    無料でアプリ・システム開発の相談を受付中

      氏名

      法人名

      メールアドレス

      日中繋がりやすい電話番号

      お問い合わせ詳細 ※分かる範囲でご記入ください

      フォームの送信によりGoogleのプライバシーポリシー利用規約に同意したものとみなされます。

      日本最大級のノーコード開発実績!アプリ・システム開発サービス
      「勉強になった!」「役に立った!」と思っていただけたら、是非シェアもお願いします!
      ノーコード開発ツールを使ったアプリ・システム開発にお困りですか?
      1からの開発も、途中からの開発も、お気軽にEPICsにご相談ください!
      著者・監修者
      大熊滉希
      日本最大級のノーコード開発実績を誇るEPICs株式会社の代表。株式会社DRAFT役員として新規事業のコンサルティングに従事した後、EPICsを創業。ノーコード開発の顧問として上場企業に支援も行っている。
      監修者
      石森裕也
      EPICs株式会社CTO。サイバーエージェントのグループ会社での経験を経てEPICsに参画した。これまでで100件以上のノーコード開発に従事。開発経験は10年。
      目次