エブリサイトでは、kintone のレコードを参照し、メールアドレスで認証を行うことが可能です。

認証された人のみ閲覧できるページや、認証された上でさらに特定のユーザーしか見えないページを作れます。


会員向けサイトを例に、認証機能を利用したページの作成例を紹介します。


今回はこちらの4ページ

を作成するうちの「会員登録ページ」についての作成例を紹介します。


画面デザイン

完成図

会員登録ページの完成図はこちらです。


画面デザインページ

会員登録ページの画面デザインページはこちらです。


接続設定

会員登録ページでは「認証なしで利用可」の接続設定を行います。

会員登録ページはインターネット上で誰でもアクセスできるページです。

そのため、「認証可否」には「認証なしで利用可」を設定して接続設定を行います。


接続設定画面の操作・概要については次の記事を併せてご覧下さい。

ページ画面の接続設定タブについて

また、「認証可否」の詳細については次の記事の「接続設定における4種類の接続可否とは」節を併せてご覧下さい。

ページ生成時処理とページ内処理 ・ログイン・接続設定について


ページ内処理

全体の処理としては大きく、入力チェックをして確認ダイアログを表示する処理と、確認ダイアログでOKを押した後に実際のレコード処理をする流れに分かれます。

それぞれに分けて記載します。


入力チェックをして確認ダイアログを表示する


1番アクションでは、やること「入力エラーをチェックする」、条件「ボタンを押した時」を使い、ボタンを押した時に入力エラーをチェックします。


2番アクションでは、やること「確認ダイアログを表示する」、条件「入力アイテムにエラーがないならば」で、入力エラーがなければ確認ダイアログを表示し、登録してよいかを確認します。

なお、「入力アイテムにエラーがないならば」は「入力アイテムにエラーがあるならば」の反転で設定できます。反転の操作は次の通りです。


確認ダイアログでOKを押した後に実際のレコード処理をする

3番アクションでは、やること「クエリで条件を指定して kintone からレコードを取得する」を条件「確認・入力ダイアログで「OK」を押した時」で設定し、ダイアログが「OK」を押されたら入力されたメールアドレスを使用してkintoneアプリからレコードを取得します。


4番アクションではメールアドレスが一致するレコードがなければ、やること「kintone にレコードを追加する」でkintoneにレコードを追加し、続く5番アクションのやること「情報ダイアログを表示する」で情報ダイアログを表示します。

このため、4番アクションの条件「数値が条件を満たすならば」で「count関数」を使用し、3番アクションで取得したレコード件数を判定します。


6番アクションでは一致するレコードがあれば、「情報ダイアログを表示する」で情報ダイアログを表示します。


なお、5番と6番のダイアログの内容が同一なのは、もしサイトへの攻撃者がアクセスしようとした際に一致するレコードがあると、そのメールアドレスのユーザーの存在有無が知られてしまう、というリスクがあるため、5番と同様の挙動・見た目にする、という目的があります。


最後に

この記事ではこちらの4ページ

を作成するうちの、「会員登録ページ」についての作成例を紹介しました。

ぜひ他のページの作成例も参考にエブリサイトを活用してみてください。


エブリサイトのドキュメントページサポートページもぜひご活用ください。