1

Symfony 1.4 でユーザー パスワードのリセットを実装していますが、既に SfGuard を使用しています。

ご希望の工程:

  • ユーザーがリンクをクリックする
  • URL と期限切れのトークンを含むメールを取得します
  • URL に移動し、承認用のトークンを提供します (要求時または手動で)
  • パスワードをリセットします
  • パスワード変更の 2 番目の電子メール通知を受け取る

これを実装するプラグイン/パターンはありますか?

4

1 に答える 1

2

あなたはプロセスをかなり説明しました。これが大まかなガイドです - 私はあなたの ORM を知らないので、Propel を使っていると思います。この機能はsfDoctrineGuardPluginにあるからです。

  • sfGuardProfile User モデルに 2 つのフィールドを追加します: token と tokenExpiresAt
  • 生成を処理し、URL + トークンを電子メールで送信するアクション (reset_request) を作成します。
  • ログインページなどからこのアクションにリンクします。
  • 提供された :token と expireAt > time() に基づいて UserProfilePeer を使用してユーザーを検索するアクション (reset_token) を作成します。
  • ユーザーが新しいパスワードを設定するためのフォームを提示し、送信とユーザーの保存とログインを処理します。

より多くのインスピレーションを得るために、 sfGuardForgotPasswordActionsでどのように実装されているかを見てください。

于 2012-06-11T21:32:26.017 に答える