AWS SDKからWAF付きのCloudFrontを作成する時に、’Web ACL is not accessible by the requester.’が出た時の対応覚書

問題 AWS SDKのcreateDistributionでCloudFrontを作ろうとした時、以下のエラーに遭遇することがある。 { [InvalidWebACLId: Web ACL is not accessib […]

広告ここから
広告ここまで

目次

    問題

    AWS SDKのcreateDistributionでCloudFrontを作ろうとした時、以下のエラーに遭遇することがある。

    { [InvalidWebACLId: Web ACL is not accessible by the requester.]
      message: 'Web ACL is not accessible by the requester.',
      code: 'InvalidWebACLId',
      time: Tue Mar 07 2017 10:06:22 GMT+0000 (UTC),
      requestId: 'XXXXXX-XXXX-XXXX-XXXX-XXXXX',
      statusCode: 400,
      retryable: false,
      retryDelay: 47.492129635065794 }
    

    対応

    createDistributionを実行するIAMユーザーに”waf:GetWebACL”の権限を与えることで動作した。

    SDK系で権限が足りてない場合、「ARN / Actionの権限がないよ」のように具体的なメッセージを出してくれることが多いが、このケースはその限りでない様子。

    ちなみにAWS SDKのドキュメントに「waf:GetWebACL”の権限つけてね」という表記はないので要注意。

    参考

    AWS Documentation » AWS WAF » API Reference » Actions » AWS WAF » GetWebACL

    広告ここから
    広告ここまで
    Home
    Search
    Bookmark