以前こちらで紹介した、Email受信確認をするゲストアクセスの設定方法を少し解説します。
Guestアクセスの基本的な設定は省略します。
特徴的なポイントは3つです。
- セルフ登録の登録ページのフォームをカスタマイズ
- セルフ登録のスポンサ確認を編集
- サービス設定はGuest auth with MAC Cachingを使う
1.セルフ登録の登録ページのフォームをカスタマイズ
重要な点は、"modify_expire_time" と "do_expire" のフィールドを追加する点です。
modify_expire_timeの初期値を5分など、Emailの受信に必要な最小限の期間に設定しておき、それを強制値とします。フィールドは非表示にします。
次に、do_expireで、アカウントの有効期限が切れた時の動作を指定します。こちらも非表示で、初期値を"4"のDelete and logout at specified time を指定、強制値とします。
こうすることで、5分以内にEmail受信確認ができなければ、端末はログアウトされます。
2. セルフ登録のスポンサ確認を編集
次に、スポンサ確認の設定を編集します。変更点は2点です。
まず、電子メール配信のメールフィールドを"email"に変更します。こうすることで、スポンサ承認のメールをセルフ登録で入力した利用者自身のメールアドレス宛に送信します。
もう1点は、有効期限の延長で"+8h"など、Email受信確認後に利用させたいゲストアカウントの有効期限を入力します。
こうすることで、Emailを受信 > リンクをクリック > 承認画面で承認 が完了すると、ゲストアカウントの有効期限が延長されるようになります。
3. サービス設定はGuest auth with MAC Cachingを使う
最後にサービスの設定です。テンプレートが用意されているのでそれを使って下さい。内容の細かな疑問があれば個別に聞いて下さい。
設定 > ここから開始 で"Guest Authentication with MAC Caching" を選択し、あとは指示に従って設定を進めるだけです。
設定が完了すると、2つのサービスが出来上がります。
MAC Cachingを有効にしておくことで、最初の5分経過後に一度強制的にdo_expireでログアウトされますが、直ちにMAC認証で再認証が動作し、認証済みのRoleが適用されます。
これは、Guest Authentication のEnforcementで、EndpointのステータスをUnknownからKnownに変えているからです。Guestアカウントの有効期限が切れたら、このKnown状態も削除されますが、検証環境などですぐにKnownステータスをUnknownに戻したい場合は、Endpoint Repositoryでマニュアルで変更して下さい。