3.5. レルムへのメールの設定
Red Hat build of Keycloak は、ユーザーがパスワードを忘れた場合、または管理者がサーバーイベントに関する通知を受け取る必要がある場合に、ユーザーにメールアドレスを確認するためにメールを送信します。Red Hat build of Keycloak がメールを送信できるようにするには、Red Hat build of Keycloak に SMTP サーバー設定を提供します。
手順
- メニューで Realm settings をクリックします。
Email タブをクリックします。
Email tab
- フィールドに入力し、必要に応じてスイッチを切り替えます。
テンプレート
- From
- from は、送信メールに From SMTP ヘッダーに使用されるアドレスを示します。
- From Display Name
- From display name では使いやすい電子メールアドレスエイリアスを設定できます (オプション)。設定されていない場合、プレーン From のメールアドレスが電子メールクライアントに表示されます。
- 返信先
- Reply to は、送信メールの Reply-To SMTP-Header に使用されるアドレス (任意) を示します。設定されていない場合、プレーン From メールアドレスが使用されます。
- Reply To Display Name
- Reply to display name により、ユーザーフレンドリーなメールアドレスエイリアス (オプション) を設定できます。設定しない場合には、プレーンな Reply To のメールアドレスが表示されます。
- Envelope from
- From は、送信メールの Return-Path SMTP-Header に使用される Bounce Address アドレスを示します (任意)。
接続と認証
- ホスト
- ホスト は、電子メールの送信に使用される SMTP サーバーのホスト名を示します。
- Port
- Port は SMTP サーバーポートを示します。
- 暗号化
- これらのチェックボックスのいずれかにチェックを入れると、特に SMTP サーバーが外部ネットワーク上にある場合に、ユーザー名とパスワードを回復するための電子メールの送信がサポートされます。多くの場合、ポート を SSL/TLS のデフォルトポートである 465 に変更する必要がございます。
- Authentication
- SMTP サーバーで認証が必要な場合は、このスイッチを ON に設定します。
- Username
- すべての認証メカニズムにはユーザー名が必要です。
- Authentication Type
- 認証の種類 ('password' または 'token') を選択します。
- Password
- Authentication Type で 'password' を選択した場合にのみ必要です。Password を入力してください。Password フィールドの値は、外部の vault の値を参照できます。
- Auth Token URL
- Authentication Type に 'token' を選択した場合にのみ必要です。クライアント認証情報の付与を介してトークンを取得するために使用される Auth Token URL を指定します。
- Auth Token Scope
- Authentication Type に 'token' を選択した場合にのみ必要です。Auth Token URL からトークンを取得する場合に使用される Auth Token Scope を指定します。
- Auth Token ClientId
- Authentication Type に 'token' を選択した場合にのみ必要です。Auth Token URL からトークンを取得する場合に使用される Auth ClientId を指定します。
- Auth Token Client Secret
- Authentication Type に 'token' を選択した場合にのみ必要です。Auth Token URL からトークンを取得するためにクライアントを認証する Auth Client Secret を指定します。Auth Client Secret フィールドの値は、外部の vault からの値を参照できます。
- Allow UTF-8
サーバーに送信するときに UTF-8-encode メールアドレスを有効にします。これは、メールサーバーが SMTPUTF8 拡張機能を介して UTF-8 をサポートする場合にのみ有効にする必要があります。無効にすると、ASCII 以外の文字を含むドメイン名は punycode を使用してエンコードされ、アドレスのローカル部分に ASCII 以外の文字が含まれるアドレスはエラーを返します。
このオプションを有効にしない場合は、ユーザーの電子メールアドレスで ASCII 以外の文字を防ぐために追加の対策を講じてください。
- 既存のユーザーのメールアドレスがメールアドレスのローカル部分に非 ASCII 文字でないことを確認します。
-
たとえば、
\p{ASCII}*@.* のようなメールアドレスフィールドのユーザープロファイルに正規表現パターン検証を追加するなどして、電子メールアドレスの検証をメールアドレスのローカル部分で ASCII
文字しないように更新し、アドレスの Local 部分と同様のエラーメッセージに ASCII 文字だけを含める必要
があります。