11

Django OAuth Toolkit のプロバイダーとリソースのドキュメントを調べましたが、見つけることができるのは、ユーザーhow to 'authenticate' a userへの方法ではありません。register

マシンですべてをセットアップできますが、ユーザー名とパスワードを使用してユーザーを登録する方法がわかりません。私は非常に微妙な何かが欠けていることを知っています。ユーザーを正確に登録し、アクセス トークンを取得して、リソース サーバーと通信するにはどうすればよいですか。

また

最初に通常の Django メカニズムを使用してユーザーを登録してから、同じトークンを取得する必要がありますか?

4

4 に答える 4

1

django-oauth-toolkit のアプリケーション クライアントの詳細 (クライアント ID とクライアント シークレット キー) と組み合わせた通常の django メカニズムでユーザーを登録しています。

トークン認証で制限されていない別のUserRegisterApiViewものがありますが、新しいユーザーを登録するためのポストリクエストを作成しているときに、クライアントIDとクライアントシークレットキーをチェックします。このようにして、登録 URL アクセスを登録済み OAuth クライアントのみに制限しています。

登録ワークフローは次のとおりです。

  1. と を使用した React/Angular/View アプリからのユーザー登録client_idリクエストclient_secret
  2. Django は client_id と client_secret が有効かどうかをチェックします。
  3. 有効かつ登録ユーザーデータが有効な場合、ユーザーを登録します。
  4. 成功した応答で、ユーザーをログイン ページにリダイレクトします。
于 2019-12-28T14:35:34.843 に答える