3

最近、id トークンを取得して使用するのに問題はありませんでしたが、おそらく 2 週間後に新しいトークンを取得して (古いトークンを削除して新しいトークンを取得して)、それを検証すると正しく動作しません。

クライアント側に Android アプリがあり、サーバー側に Java サーブレットがあります。検証は、ここで説明されているように行われます。クライアントは GoogleAuthUtil.getToken() メソッドでトークンを取得します。新しいトークンを取得して検証するのに問題はありません。この問題は、古いトークンを GoogleAuthUtil.clearToken() でクリアして新しいトークンを取得しようとすると発生します。検証は失敗します。https://www.googleapis.com/oauth2/v1/tokeninfo?id_token=を確認すると、トークンが有効であることがわかります。同じトークンをバックエンド検証者に手動で再送信した後、トークンは正常に送信されました。

クライアントからバックエンドへの呼び出しよりも、Google API が新しいトークンを認識するのに時間がかかるようです。それとも私のコードが間違っていますか?問題が突然発生したことがわかりません。

ありがとうございました

編集:問題が見つかりました。それはAPIではありませんでした。問題は、サーバーの時間が遅れていたことです。クロックを同期した後、すべてが機能しているようです。

4

0 に答える 0