0

spring roo プロジェクトに機能を追加したいと考えています。アプリケーションにログインしてユーザーを追加するユーザー エンティティがあります。それらのユーザーを追加すると、アカウントをアクティブ化するための追加のリンクを含む検証を送信する電子メール アドレス (フィールド) があります。また、ユーザーには、アクティブなプロファイルを持っているかどうかを表すフィールドがあり、ログインできるかどうかを示します。このフィールドは、メールに記載されているリンクをクリックした後に変更する必要があります。

私はすでにベロシティ テンプレートを用意しており、すべての設定を行っています。あとは、そのリンクを作成し、ユーザーがリンクをクリックした後に有効なアカウントを持っていることを確認するプロセスだけです。

4

1 に答える 1

1

REST 呼び出しと Spring Security を使用してこれを解決しました。ユーザーが最初にサインアップするとき、UserDetailsオブジェクトを作成します (私のものは DB テーブルにありました) が、保存する前に無効に設定します (UserDetails オブジェクトには、ユーザーを有効/無効にするために操作できる 4 つのブール値があります) Spring Security がチェックするさまざまな方法)。また、ユーザー ID から生成した UUID コードをテーブルに保存し、アカウントを検証するための REST サービスへのリンクを含む電子メールを生成しました。

REST サービスは単純でした。ユーザーがリンクをクリックすると、私が生成した UUID コードが含まれます。オプションで、別の認証ステップとして、いくつかの番号を入力するか、ここで何かを行うように要求することもできますが、私の場合は、関連する UserDetails を取得するために UUID を検索し、ビットを反転して有効にして保存し、次のようなページに送信しました。彼らのアカウントはアクティブになりました。次に、この投稿のようなことをして、ユーザーを自動ログインさせました。

于 2013-06-04T19:15:05.443 に答える