APIゲートウェイで作成したAPIに投稿しようとしています:
{
"Message": "User: anonymous is not authorized to perform: execute-api:Invoke on resource: arn:aws:execute-api:us-west-2:***********:jrr7u1ekrr/v0/POST/user"
}
CloudFormationのポリシーを更新して、POST=エンドポイントを一般に利用可能にするにはどうすればよいですか?AWS::ApiGateway::RestApi
リソースタイプでAPIを宣言しています。
aPIポリシープロパティは次のとおりです。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": "execute-api:/*/POST/user"
}
]
}
「API GatewayコンソールでAPIが以前にデプロイされている場合は、リソースポリシーを有効にするためにAPIを再デプロイする必要があります。」
問題はおそらくメソッド宣言の部分にあります。 AWS::ApiGateway::Method
宣言でauthorizationType
をNONE
に設定する必要があります。
に
"Resource": "execute-api:/*/POST/user"
Account ID
の代わりに *
そして、再デプロイします。
Kr、
ポリシーを変更したら、変更を伝達するためにアプリケーションをデプロイする必要があります。再デプロイするには-1. API Gatewayに移動します。 2.リソースに移動します。 3.アクションドロップダウンをクリックします。 [Deploy API]をクリックします。