【小ネタ】 AWS WAFマネージドルールをサブスクライブ時と異なるユーザーでキャンセルしてみた

サブスクライブしたユーザーを削除しても、別のユーザーからキャンセル可能でした。

こんにちは。AWS事業本部トクヤマシュンです。

AWS WAFにマーケットプレイスで購入したマネージドルールを適用したい時があります。
このような場合にはマネージドルールのサブスクライブを行います。

サブスクライブ操作を行なった担当者が退職するなどしてIAMユーザーが削除された場合に、
サブスクリプションのキャンセルはできるのだろうか、と思って調べてみましたので
小ネタとして共有します。

はじめに結論

サブスクライブを行なったユーザーを削除しても、他のユーザーでサブスクリプションのキャンセルは可能です

理由

購入したマネージドルールのサブスクリプションにアクセスできるかどうかは、IAM権限で決まります。
参考:AWS Marketplace サブスクリプションへのアクセスのコントロール

そのため、AWSMarketplaceManageSubscriptionsといったAWS管理ポリシーを持ったユーザーであれば、他のユーザーが購入したサブスクリプションであってもキャンセルが可能です。

試してみる

それでは実際に、マネージドルールをサブスクライブした後にユーザーを削除し、他のユーザーからサブスクリプションをキャンセルしてみます。

マネージドルールをサブスクライブする

まず、subscription-purchase-testというユーザーで作業をします。  

AWS WAFマネージメントコンソール画面から、AWS Marketplaceにアクセスします。

複数のマネージドルールが表示されます。
ここでは、Cyber Security Cloud Managed Rules for AWS WAF -HighSecurity OWASP Set-をクリックします。

ルールの説明が表示されるので、Continue to Subscribeをクリックします。

Subscribeをクリックすると、購入完了です。

Marketplaceのサブスクリプションの管理に、先ほどサブスクライブしたルールがアクセスレベル:契約として表示されました。

サブスクライブしたユーザーを削除

IAMコンソール画面から、subscription-purchase-testというユーザーを削除します。

削除用のユーザー作成

IAMコンソール画面から、subscription-cancel-userというユーザーを作成します。
このユーザーには、AWS管理ポリシーAWSMarketplaceManageSubscriptionsを付与します。

マネージドルールのサブスクリプションのキャンセル

ここからは、先ほど作成したsubscription-cancel-userユーザーで作業を行います。
コンソール画面からAWS Marketplaceに遷移すると、先ほどサブスクライブしたマネージドルールが表示されているので、管理をクリックします。

アクションサブスクリプションをキャンセルをクリックします。

チェックボックスをONにし、はい、サブスクリプションをキャンセルするをクリックすることで、キャンセルが完了します。

最後に

AWS WAFのマネージドルールのサブスクライブを行なったユーザーとは異なるユーザーで、キャンセルを行ってみました。
蓋を開けるとIAMで制御しているだけなので単純な話でしたが、勉強になりました。

本ブログがどなたか困っている方の助けになれば幸いです。 それでは。