BasicStrategy と grant_type=password を使用して oauth2orize を使用してアプリケーションを開発していますが、コードのこの部分に問題があります。
passport.use('client-basic', new BasicStrategy((username, password, callback) => {
authSrv.findClientByMail(username).then((client)=>{
if (!client || client.secret !== password) { return callback(null, false); }
return callback(null, client);
},(err)=>{
return callback(null, false);
});
}
このコード (git の例から取得) では、クライアントの資格情報とユーザーの資格情報 (ユーザー名 + クライアント ID、クライアント シークレットを含むユーザーパスワード) の同等性をテストします。
これは、クライアント アプリケーションごとに 1 人のユーザーしか持てないことを意味します。
アプリケーションごとにユーザーを 1 人だけにしたくありません。実際、多くのユーザーが同じアプリケーションに (資格情報レベルで) 接続したり、コンテンツを共有したりできます...
この戦略でこれを実装する方法がわかりませんか?
「申請」という用語に関して、私はその過程で何かを誤解していると思います...