API GatewayでJWT Authorizerを利用する際にAudienceを無制限にできますか

0

Cognitoにてユーザー認証とJWTトークンの払い出しを行い、その認可をもってAPI Gatewayへのアクセスを制限しようと考えています。 APIにアクセスするクライアントアプリは、ユーザーが自由に開発・利用できるAPIを提供することを目的としており、申請があれば都度Client IDが新しく発行されます。 このClient IDをJWT AuthorizerのAudienceとして追加しないとすべて401 (Unauthorized)となるようです。

Audienceのチェックを省略する(または、ワイルドカードのようなチェック方法を)設定がありますか。 または、目的に対して選んでいるサービスが不適切でしょうか。

1回答
0
承認された回答

Client IDをJWT AuthorizerのAudienceとして追加しないとすべて401 (Unauthorized)となる

以下のドキュメントに記載されたとおり、Cognito ユーザープールをオーソライザーとして使用するとユーザープールから発行されたアクセストークンまたは ID トークンで認証が可能で、Client ID の追加は不要と思われます。

https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html

profile picture
HS
回答済み 7ヶ月前
  • 以下に Cognito オーソライザーの設定例を載せて置きます。

    $ aws apigateway get-authorizer --rest-api-id ilhmkm5tyj --authorizer-id 0x9wz3 { "id": "0x9wz3", "name": "CognitoAuthorizer", "type": "COGNITO_USER_POOLS", "providerARNs": [ "arn:aws:cognito-idp:ap-northeast-1:111122223333:userpool/ap-northeast-1_ij1KNz8dk" ], "authType": "cognito_user_pools", "identitySource": "method.request.header.Authorization" }

  • 回答がありがとうございます。 HTTP APIを用いるとにオーソライザーに制約があることを失念していました。 REST APIを使うように変えたいと思います。

    ありがとうございます。

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン