Amazon の広告情報などを取得する Amazon Product Advertising APIを利用するためには、AWS (Amazon Web Services) からアクセスキーを発行する必要があります。
AWS にログインすると、ルートアカウントに対してアクセスキーを発行するのは非推奨で、IAM ユーザーを作成し、個別の IAM ユーザーに対して適切な権限を与えるように言われます。
これについて、少し前までは IAM ユーザーに対して Product Advertising API の権限を付与することができなかったみたいで、ネット上を検索してみても Product Advertising API のアクセスキーはルートアカウントでしか発行できないという記事がたくさん見つかります。
しかし現在では IAM ユーザーに対して Product Advertising API に対する権限を付与できますので、まずは Amazon に言われる通りに IAM ユーザーに対して権限を付与するようにしましょう。
ただし、現時点では Amazon Product Advertising API を利用するには、AdministratorAccessの権限が必要のようです。
これだとせっかく IAM ユーザーを作成してもフルアクセスできてしまうのであまり意味がありません。
IAM ユーザーに Amazon Product Advertising API だけを利用できるようにするには独自にポリシーを作成する必要があるみたいです。
この件について、下記の参考 URL として挙げているサイトの内容がとても参考になりました。
AWS 初心者の私も危うくルート権限を付与するところでした。
日進月歩の IT の世界ではググる際に期間を指定するというのも重要なテクニックですね。
尚、取得したアクセスキーはコード上に直接記述せず、環境変数を使うなどするのが普通のようです。
アクセスキーをハードコーディングしたソースコードを Github などのパブリックなリポジトリに公開してしまい、不正利用された結果 Amazon から莫大な費用を請求されたというのはよく聞く話です。
そうなってしまった場合でも初回は何とか支払いを免除されたケースもあるらしいですが、絶対とは限らないので、自分の身は自分で守る必要があります。