私はAndroidアプリを実装しており、ユーザーログインが必要です。これを行うために、ログインの目的で自分のオーセンティケーターを1回だけ作成します。 AccountManagerはアクセストークンを要求することができるため、アプリケーションはパスワードを直接処理しません。 AccountManagerは、ユーザーアカウントとトークンを格納します。アカウントマネージャーを使用してAndroidでJWT認証を実装する
私はREST APIでユーザーを認証するためにJWT(Json Web Token)を使用しています。
このフローが正しいのか、それともAndroidでこれを行うより良いアプローチがあるのだろうか。
ユーザーが初めてで、ログイン画面でユーザーとパスワードを入力します。ここでは
は、私が現在使用している流れです。アカウントマネージャーに保存されている有効なトークン(JWT)を取得するようにサーバーに要求します。
その後のリクエストでは、受け取ったアクセストークンが有効期限(1時間)まで使用され、APIからコンテンツが取得されます。
トークンの有効期限が切れた後、発行日から最大2週間後にリフレッシュできます。この時点から、新しいトークンを取得するためにユーザーの資格情報が必要になります。
この処理は、トークンを処理する正しい方法ですか、それをリフレッシュしますか?プロセスは安全ですか?他のオプションはありますか?
このフローでは、「更新トークン」を使用して新しいトークンを生成するのではなく、アクセストークンを生成することを考慮すると、Androidアカウントマネージャの最適な使い方は何ですか?他にどんなツールを使うべきですか? 「リフレッシュトークン」を実装するために、JWTに沿ったOauth2の実装をお勧めしますか?
乾杯!
解決方法はありますか? – ezdookie
@ezdookieいいえ、私は説明したようにシステムを実装しました –