1

私たちのモバイル アプリケーションは、認証されていない Cognito フローを使用してデバイスを承認します。ベアラー トークンを期待するバックエンドには Oauth 認証を使用します。このベアラー トークンを取得するには、clientid/secret をクライアントに保存する代わりに、その cognito ユーザー プールの API ゲートウェイを呼び出し、ベアラー トークンを返す oauth サービス プロバイダーにプロキシする予定です。クライアントは、このベアラー トークンを使用して、さらにバックエンド コールを行います。

http プロキシをテストしたところ、API ゲートウェイ コンソールから問題なく動作しています。私たちが直面している問題は、オーソライザーにあります。私たちの承認メカニズムは、cognito ユーザープールです。そのため、オーソライザーをテストするために、コンソールは ID トークンを要求します。ID トークンが何であるかはわかりません。認証されていないcognitoユーザーのためにaws iOS sdkによって取得されたcognitoId、openTokenでテストしようとしましたが、どれも機能しません。ログからのメッセージは「Unauthorized request:」です。

誰かが解決策を提案してもらえますか?

4

1 に答える 1

1

あなたが見ていたのは、フェデレーション ID から生成されたトークンだったようです。アプリでユーザー プールを設定しましたか? ユーザーでサインインすると、ID トークン、アクセス トークン、更新トークンの 3 つのトークンを取得します。その ID トークンが必要になります。これは、これを取得するにはサインインする必要があるため、認証されていないことが少し難しいことを意味します.

于 2016-11-11T18:10:38.673 に答える