2
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

IAMポリシーでElastic IP(EIP)の解放を許可しない

Last updated at Posted at 2017-11-04

メンテナンスで、EC2インスタンスのElastic IP(EIP)を付け替える場合があります。
古いEC2インスタンスからアドレスの関連付け解除後、新しいEC2インスタンスへアドレスの関連付けする際、「アドレスの関連付け」をメニューから選択するのですが、誤って「アドレスの解放」を選択した事がありました。

qiita20171104-1.png
「アドレスの関連付け」と「アドレスの解放」のメニューが上下隣り合わせにあるので間違えやすい。

qiita20171104-2.png
一応、確認のダイアログは表示されるけど、うっかり「リリース」の青いボタンを押しそうに・・・。
「リリース」ボタンを押す直前で気付きました。
脳が疲れていていると、注意力が低下してミスを犯しやすくなります。

IAMポリシーを記述する

誤ってEIPを解放すると、対象インスタンスに接続するための設定が随所にある場合、設定変更や関係者への周知が非常に手間です。
そこで、運用が安定したAWSアカウントでは、割り当て済みのEIPを解放する予定が当面無いので、IAMポリシーで解放を許可しないよう設定しました。
同様に、KeyPairやVPCの削除も同様に設定すると良いかもしれません。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "一意の識別子",
      "Action": [
        "ec2:ReleaseAddress"
      ],
      "Effect": "Deny",
      "Resource": "*"
    }
  ]
}

※一意の識別子=ポリシー内で固有のID. Stmt10000000000001など。

検証

ポリシー作成後、ユーザやグループにアタッチして、EIPが解放できない事を検証します。
※検証用に新規に割り当てたEIPを使用する等、実運用で使用していないEIPで検証してください。
qiita20171104-3.png
正しくポリシーが適用されていれば、アドレスの解放の確認ダイアログで「リリース」ボタンを押した際にエラーになります。

2
6
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?