17

私はトリッキーな問題に遭遇しました。

Appengine エンドポイントを使用してサーバー側 API を実装しています。この API は、一部のデータをユーザーに返します。アプリケーションは、アプリ製品の購入をサポートします。私の考えは単純です。ユーザーが特定の製品を購入するとすぐに、API が追加のデータを返します。簡単な方法は、フラグをパラメーターとして API に渡すことです。しかし、エンドポイントへの OAuth 認証を有効にして、より安全にしたいと考えています。そのため、ユーザーが何かを購入するとすぐに、サーバーで検証および記憶されます。したがって、私の API エンドポイントは、特定のユーザーに返すデータを常に認識しています。

ただし、問題は次のとおりです。ユーザーが購入したくない場合を除き、ユーザーに認証を強制したくありません。しかし、ユーザーが別のデバイスを使用しており、アプリから Google アカウントを使用してログインしていない可能性があります。このように、API は無料のデータのみを返しますが、ユーザーは有料の製品を購入しています。プレイ サービスを介して購入した製品を照会できますが、完全なデータを取得するには、サーバーで認証するか、フラグを渡す必要があります。

これらは通常どのように行われますか?ユーザーの最初の Google アカウント (Play ストアで使用されることが保証されている) をサイレント モードで使用して、サーバーで認証することはできますか、それとも間違っていますか?

ありがとう。

4

1 に答える 1