こんにちわ。ますの(@masno_soy)です。
先日ブログで書いた「【AWS】IAMロールの作成のみを許可するIAMポリシー設定」に続くIAMポリシー第2弾です。
今回はAWSのロードバランサー:ELB(Elastic Load Balancing)の作成権限が欲しいのですと依頼です。
上長より「既存のELB(Elastic Load Balancing)は削除できないよう」と指令がございました。
余裕だぜぇ!!
はい。見事に裏切られました。既定のIAMポリシーには読み取り専用しか無さそうです。
作成してみるのであります。
ELB(Elastic Load Balancing)を作成するためのJSON
今回はELB関連の設定としてターゲットグループや証明書の設定なども出来るように設定を行います。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"elasticloadbalancing:Create*",
"elasticloadbalancing:Describe*",
"elasticloadbalancing:RegisterTargets",
"elasticloadbalancing:SetIpAddressType",
"elasticloadbalancing:SetSubnets",
"elasticloadbalancing:ApplySecurityGroupsToLoadBalancer",
"elasticloadbalancing:RegisterInstancesWithLoadBalancer",
"elasticloadbalancing:EnableAvailabilityZonesForLoadBalancer",
"elasticloadbalancing:AttachLoadBalancerToSubnets",
"ec2:Describe*",
"iam:CreateServiceLinkedRole",
"iam:ListServerCertificates",
"iam:GetServerCertificates"
],
"Resource": [
"*"
]
}
]
}
今のところ設定後に部署からクレームは来ていないので大丈夫なはずであります。。。
自信ないけど^q^
もし何かあったら追記しておくであります!
自信ないけど^q^
もし何かあったら追記しておくであります!
IAMポリシーに設定した内容のアレコレの備忘です
- Describe*:説明を表示する内容です。とりあえずEC2インスタンスとELBは説明や一覧を表示したかったので付与したものになります。
- iam:証明書関係と作成したリソースに対して自動でIAMを作成する機能のために追加しています。
それ以外については「Elastic Load Balancing API アクセス許可」より削除に該当しない権限をピックアップして、先ほどのJSONに追加した次第です。
アクセス許可設定名 | 採用可否 | 概要 |
CreateLoadBalancer | 〇 | ロードバランサーを作成します。 |
CreateTargetGroup | 〇 | ターゲットグループを作成します。 |
RegisterTargets | 〇 | ロードバランサーにターゲットグループを設定します。 |
SetIpAddressType | 〇 | 指定したALB(Application Load Balancer)またはNLB(Network Load Balancer)のサブネットに使用するIPアドレスを設定します。 |
SetSubnets | 〇 | ロードバランサーに設定されたパブリックサブネットのアベイラビリティーゾーンの有効化ができます。 |
ApplySecurityGroupsToLoadBalancer | 〇 | ロードバランサーにセキュリティグループを設定します。 |
AttachLoadBalancerToSubnets | 〇 | ロードバランサーにサブネットを設定します。 |
DeregisterInstancesFromLoadBalancer | × | ロードバランサーから指定されたインスタンスを削除します。 |
DescribeInstanceHealth | 〇 | ロードバランサーに関して指定されたインスタンスの状態を記述します。 |
DescribeLoadBalancers | 〇 | ロードバランサーの説明を表示します。 |
DisableAvailabilityZonesForLoadBalancer | × | 指定されたアベイラビリティーゾーンを、指定されたロードバランサーの一連のアベイラビリティーゾーンから削除します。 |
EnableAvailabilityZonesForLoadBalancer | 〇 | 指定されたアベイラビリティーゾーンを、指定されたロードバランサーの一連のアベイラビリティーゾーンに追加します。 |
RegisterInstancesWithLoadBalancer | 〇 | 指定されたインスタンスを指定されたロードバランサーに追加します。 |
概要の参照:https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/list_elasticloadbalancing.html
設定後様子見しているので何かあれば随時記載していきますので、不具合等はご容赦くださいませ。。。