KeyCloakコンポーネントのメール設定
投稿日: 2023年4月27日
OS: Ubuntu 22.04
バージョン: RapidMiner 10.1.0
RapidMinerプラットフォームに統合されているKeyCloakコンポーネントは、SMTPサーバーを使用してメールを送信するように設定することができます。
これは、ユーザー管理に関連するユースケースで必要となります。いくつかの例を以下に紹介します。
- 認証メールの送信が必要な、セルフサインアップの許可
- パスワードのリセットメールの送信
SMTPサーバーを設定する
メールの設定を行う前に、Adminユーザーのメールアドレスが正しく設定されているかを確認します。Adminユーザーの詳細を確認するにはIdentity and Security の Usersに一覧表示されるユーザーの中からadminのIDのリンクをクリックします。一覧が表示されていない場合は、左上のView all usersのボタンをクリックすると表示されます。
デフォルトのEmailはサンプルになっています。この後に設定するSMTPサーバーのメール送信テストの際に送信先となるのがAdminのメールアドレスとなるため、サンプルのメールアドレスにしている場合は、接続には成功しますが送信には失敗します。
Adminのメールアドレスが正しいことが確認できれば、次にKeyCloakコンポーネントのSMTPサーバーを設定します。ConfigureのRealm SettingsからEmailタブをクリックします。以下を参考にKeyCloakがメール送信に使用するSMTPサーバーの詳細を追加します。SMTPの設定内容は使用されるのプロバイダーによって異なりますので提供元にご確認ください。
Target connectionのボタンをクリックします。Adminのメールアドレスに宛に以下のようなメールが受信されればテストは成功です。
メールを送信する
ここではあるユーザーにパスワード変更を促すメールを送信する手順でメールの手動送信の方法を紹介します。まずは送信先となるユーザーを表示させます。先ほどAdminのユーザーの詳細を表示した要領で、メールを送信したいユーザーの詳細を表示させて、Credentialsタブに移動します。
Credential ResetのReset Actionsでアクションを選択します。ユーザーにメールアドレスを認証させるVerify Emailなどいくつかアクションが用意されていますが、ここではユーザーにパスワードの更新を促すUpdate Passwordを選択します。
アクションの有効期限も設定できますが、ここではデフォルトの2日間の設定のままにしています。
最後にメールを送信するためにSend emailをクリックします。
確認のポップアップが表示されますのでSend Emailをクリックします。
ユーザーは以下のようなメールを受信します。
メールのリンクをクリックすると以下のようにパスワード変更を促すページに遷移します。
>>Click here to proceedをクリックするとパスワード設定画面に遷移します。新規のパスワードを入力します。
Submitをクリックするとパスワード更新が完了したメッセージが表示されます。
その後、ユーザーは変更したパスワードでログインすることができます。
ログインアクション時にメールを送信する
ユーザーがログインする際にメールアドレスの認証を行いたい場合の方法を紹介します。以下のようにEmail VerifiedをOFFにします。こちらはユーザーがメールアドレスを認証した後に自動でONに更新されることを想定してOFFに設定します。Required User Acitionsにはユーザーがログインを行った後に実施してもらいたいアクションを指定することができます。ここではメールアドレスの認証を実施させるためにVerify Emailを選択します。最後にSaveをクリックして設定を保存します。
その後、ユーザーが次回以降のログインで認証情報を入力してAI Hubにログインを試行すると、通常のメニュー画面ではなく以下のページに遷移します。
また同時にユーザーにはメール認証用のリンクがメールで送信されます。(上記のClick hereのリンクをクリックすることでメールの再送信が可能です)
メール内のリンクをクリックするとAI Hubのメニューへ遷移することができます。
認証が完了したユーザーはEmail VerifiedがONに更新されます。
なお、再度Email VerifiedをOFFにしてCredentialsのReset ActionsでVerify Emailを選択、Send emailをクリックすることで、任意のタイミングでもユーザーにメールを確認させることも可能です。