2016-05-06 8 views
1

現在、WSO2を使用して新しく作成したユーザーアカウントのロックを解除するための回復メールを送信しようとしています。ここでWSO2リカバリー通知は常にデフォルトのpasswordReset

String key = userInfoutil.verifyUser("[email protected]", captchaBean); 
userInfoutil.sendRecoveryNotification("[email protected]", key, "accountUnLock"); 

sendRecoveryNotification()には3つのパラメータが何であるかをされています:簡潔にするために、ここではこれを実行しようとしているJavaコードの関連する2行はある

[email protected] - user/tenant to notify 
key     - authorization string based off Captcha 
accountUnLock  - email template to use for recovery message 

しかし、我々が観察したものpasswordResetテンプレートが常に使用されるということです。つまり、指定したものは無視し、パスワードリセットの電子メールを送信します。また、同じユーザーのSOAP UIから直接サービスを呼び出すときも同じ動作が確認されました。また、email-admin-config.xmlファイルからpasswordResetの設定をコメントアウトすると、NullPointerExceptionとなります。したがって、WSO2サーバーはpasswordResetを使用して地獄になっているようです。

この問題は、例外が発生したコードがWSO2サーバー自体にあり、当社独自のコードではないため、診断が難しいです。私たちが知る限り、我々は正しい構成を持っています。

この問題を解明することもできる人には大規模なアップヴォートが来ています。

答えて

1

sendRecoveryNotificationの3番目のパラメータは電子メールテンプレートではありません。これは、電子メール、SMSのようにユーザーに送信する必要がある通知の種類です。デフォルトでは、Identity Serverは電子メールのみをサポートします。

要件は何ですか。 passwordResetテンプレートを使用できないのはなぜですか?
Isura

+0

おかげでフィードバックをいただき、ありがとうございます。私が通知タイプとして 'email'を使用すると仮定すると、私はどのような_電子メールテンプレートを使用したいのですか?私たちがテンプレートを選ぶことができないなら、何がそんなにたくさんあるのでしょうか? –

+0

Identity Serverは、どのテンプレートがどのタスクを使用するかを決定します。パスワードリセットを使用する場合は、パスワードリセットテンプレートを選択します。自己登録を使用する場合は、自己登録メールテンプレートが必要です。パスワードの確認機能を使用する場合は、パスワードテンプレートを要求します。 –

+0

SOAPがパスワードリセットとアカウントロック解除を呼び出すのは何ですか?カスタムテンプレートを定義できるようです。しかし、WSO2がどのテンプレートを自動的に使用するかを選択すると、どのようにカスタムテンプレートを使用できますか? –

関連する問題