2

アプリケーションの一部のユーザーは管理者です。新しいユーザーを作成する機能を提供したいと考えています。以下の流れを考えます。

  1. 管理者は「ユーザー」ページに移動し、「新しいユーザーの作成」ボタンをクリックして、新しいユーザーの名前と電子メール アドレスを入力します。
  2. その新しいユーザーは、アプリケーションでユーザーが作成されたことを確認する電子メールを取得します。
  3. ユーザーはメール本文のリンクをクリックして「パスワードの設定」ページに進み、パスワードを指定します。

angular + expressでそのようなフローを実現することは可能ですか? 他に実現可能なフローはありますか?

4

1 に答える 1

2

招待ベースのフローを作成できますが、ライブラリを使用していくつかのカスタム作業を行う必要があります。

Stormpath Client と Stormpath Application を直接操作する必要があります。これらはStormpath Node SDKによって提供されます。Express ミドルウェア内で、次のようにクライアントを取得します。

var stormpathClient = req.app.get('stormpathClient')

および次のアプリケーション:

var stormpathApplication = req.app.get('stormpathApplication`)

アプリケーションで、stormpathApplication.createAccount()を使用してユーザーを作成します。新しいアカウント データを渡すときは、パスワードを非常に長く、ランダムで、推測できないものに設定します。Stormpath ディレクトリでメール検証が有効になっている場合、ユーザーは招待メールを受け取ります。そのメールは、URL からメール検証トークンを読み取り、サーバー上のカスタム ミドルウェアに投稿するカスタム ビューに、それらを Angular アプリケーションにリンクする必要があります。このミドルウェアは、stormpathClient.verifyAccountEmail()を使用してトークンを検証する必要があります。

次に、ユーザーの新しいパスワードを収集し、 を設定してreq.user.password='new password'から を呼び出して保存しますreq.user.save()

お役に立てれば!私はStormpathで働いており、これらのライブラリのメンテナーです:)

于 2016-02-08T19:54:16.173 に答える