私たちのプロジェクトは、Javaバックエンド(Spring Webアプリケーション)とiOSとAndroidクライアントアプリケーションで構成されています。次に、クライアントアプリケーションの認証をJavaバックエンドに追加する必要があります。この考え方は、外部Webサービスを使用して初めてユーザーを登録することです。このステップでは、ユーザーは完全な資格情報(ログインと "大きな"パスワード)を提供し、さらなる認証のためにいくつかのPINを選択します。プライマリステップが正常に完了すると、ユーザーはログインとPIN(以前に自分が選択したもの)を使用して認証できるようになります。これらのログインとピンはDBに保存する必要があります。また、必要に応じていつでも「セッション」とPINを破棄することができます。我々は、Webアプリケーションに最大10,000人の登録ユーザーがおり、同時に1000人のユーザーがオンラインになることを期待しています。Spring RESTサービス、ユーザー登録、認証
また、別の認証サーバーを使用する予定はないため、Webアプリケーション(バックエンド)自体にセキュリティを組み込む予定です。
私は2つのアプローチを検討しています。まず@通常の春@EnableWebSecurityアプローチです。これはまっすぐ進むと思われますが、サーバーにとっては「セッション」が悪いと言う人もいます。セッションは多くのメモリを消費し、パフォーマンスへの全体的な影響は悪くなります。本当ですか?
もう1つのアプローチは、Spring Oauth2の実装を使用することです。私はそれを適切に勉強する時間がなかった、これは私にとって少し残酷であるようです。私たちのニーズに合わせて勉強する価値はありますか? (私たちは時間を使い果たしている)。
また、セキュリティのニーズに合わせて適切なDB構造を用意する必要があります。
質問には、私たちの状況に最も適した方法はありますか?同様の問題を解決しているオープンソースプロジェクトはありますか?助けていただければ幸いです。
ありがとうございます。
私は自分の答えを改善することができるように少なくとも投票の理由を提供する –