Container Service for Kubernetes (ACK) 専用クラスターを作成すると、クラスター内のノードにリソースアクセス管理 (RAM) ロールが自動的に割り当てられます。 RAMロールには、必要以上の権限があります。 ACK専用クラスターのデフォルトのセキュリティを強化するために、ACKはACK専用クラスターのノードに割り当てられているRAMロールの権限を減らします。
影響
この変更は、新しく作成されたACK専用クラスターにのみ適用されます。 ACK管理クラスターとACKサーバーレスクラスターは影響を受けません。
この変更は、既存のACK専用クラスターには適用されません。 既存のACK専用クラスターのノードに割り当てられているRAMロールの権限を減らす場合は、RAMロールにアタッチされているRAMポリシーを変更できます。 詳細については、「マスターRAMロールの権限」および「ワーカーRAMロールの権限」をご参照ください。
重要既存のACK専用クラスターのノードに割り当てられているRAMロールの権限を減らす前に、クラスター内のコンポーネントが削除する権限を必要としないことを確認してください。 削除する権限が依然として必要な場合は、RAMポリシーをロールバックする必要がある場合に備えて、RAMポリシーを変更する前にポリシーの内容をバックアップすることをお勧めします。
マスターRAMロールの権限
この権限の変更が適用されると、マスターRAMロールには、クラウドコントローラマネージャ (CCM) 、Container Storage Interface (CSI) ドライバ、ネットワークコンポーネント、およびロギングコンポーネントが必要とする最小限の権限のみが付与されます。
CCMに必要な最小限の権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "ecs:Describe *" 、 "ecs:CreateRouteEntry" 、 "ecs:DeleteRouteEntry" 、 "ecs:CreateNetworkInterface", "ecs:DeleteNetworkInterface", "ecs: DescribeNetworkInterfaces"、 "ecs:DeleteNetworkInterfacePermission", "ecs:ModifyInstanceAttribute", "ecs:AttachKeyPair" 、 "ecs:StopInstance", "ecs:StartInstance", 「ecs:ReplaceSystemDisk」 ], "Resource": [ "*" ], "Effect": "Allow" }, { "Action": [ "slb:Describe*", "slb:CreateLoadBalancer" 、 "slb:DeleteLoadBalancer" 、 "slb:ModifyLoadBalancerInternetSpec" 、 "slb:RemoveBackendServers", "slb:AddBackendServers", "slb:RemoveTags" 、 "slb:AddTags" 、 "slb:StopLoadBalancerListener" 、 "slb:StartLoadBalancerListener" 、 "slb:SetLoadBalancerHTTPListenerAttribute" 、 "slb:SetLoadBalancerHTTPSListenerAttribute" 、 "slb:SetLoadBalancerTCPListenerAttribute" 、 "slb:SetLoadBalancerUDPListenerAttribute" 、 "slb:CreateLoadBalancerHTTPSListener" 、 "slb:CreateLoadBalancerHTTPListener" 、 "slb:CreateLoadBalancerTCPListener" 、 "slb:CreateLoadBalancerUDPListener" 、 "slb:DeleteLoadBalancerListener" 、 "slb:CreateVServerGroup" 、 "slb:DescribeVServerGroups" 、 "slb:DeleteVServerGroup" 、 "slb:SetVServerGroupAttribute" 、 "slb:DescribeVServerGroupAttribute" 、 "slb:ModifyVServerGroupBackendServers" 、 "slb:AddVServerGroupBackendServers" 、 "slb:ModifyLoadBalancerInstanceSpec" 、 "slb:ModifyLoadBalancerInternetSpec" 、 "slb:SetLoadBalancerModificationProtection" 、 "slb:SetLoadBalancerDeleteProtection" 、 "slb:SetLoadBalancerName" 、 "slb:ModifyLoadBalancerInstanceChargeType" 、 "slb:RemoveVServerGroupBackendServers" ], "Resource": [ "*" ], "Effect": "Allow" }, { "Action": [ "vpc:Describe *" 、 "vpc:DeleteRouteEntry" 、 "vpc:CreateRouteEntry" ], "Resource": [ "*" ], "Effect": "Allow" } ] }CSIドライバーに必要な最小限の権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "ecs:DescribeDisks", "ecs:DescribeInstances", "ecs: DescribeResourcesModification"、 "ecs:DescribeInstanceTypes", "nas:DescribeFileSystems" 、 "ecs:AttachDisk", "ecs:CreateDisk" 、 "ecs:CreateSnapshot", "ecs:DeleteDisk", "ecs:DeleteSnapshot" 、 「ecs:DetachDisk」 ], "Resource": [ "*" ], "Effect": "Allow" } ] }ネットワークコンポーネントに必要な最小権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "ecs:CreateNetworkInterface", "ecs:DescribeNetworkInterfaces", "ecs:AttachNetworkInterface", "ecs:DetachNetworkInterface" 、 "ecs:DeleteNetworkInterface", "ecs:DescribeInstanceAttribute", "ecs:DescribeInstanceTypes", "ecs:AssignPrivateIpAddresses" 、 "ecs:UnassignPrivateIpAddresses" 、 "ecs:DescribeInstances", "ecs:ModifyNetworkInterfaceAttribute" ], "Resource": [ "*" ], "Effect": "Allow" }, { "Action": [ "vpc:DescribeVSwitches" ], "Resource": [ "*" ], "Effect": "Allow" } ] }ロギングコンポーネントに必要な最小権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "log:CreateProject", "log:GetProject", "log:DeleteProject" 、 "log:GetLogStore" "log:GetLogStore", "log:UpdateLogStore" 、 "log:DeleteLogStore" 、 "log:CreateConfig" 、 "log:UpdateConfig" 、 "log:GetConfig" 、 "log:DeleteConfig" 、 "log:CreateMachineGroup" 、 "log:UpdateMachineGroup" 、 "ログ: GetMachineGroup" 、 "log:DeleteMachineGroup" 、 "log:ApplyConfigToGroup" 、 "log:GetAppliedMachineGroups" 、 "log:GetAppliedConfigs" 、 "ログ: RemoveConfigFromMachineGroup" 、 "log:CreateIndex", "log:GetIndex" 、 "log:UpdateIndex" 、 "log:DeleteIndex" 、 "log:CreateSavedSearch" 、 "ログ: GetSavedSearch" 、 "log:UpdateSavedSearch" 、 "ログ: DeleteSavedSearch" 、 "log:CreateDashboard", "log:GetDashboard" 、 "log:UpdateDashboard" 、 "log:DeleteDashboard" 、 "log:CreateJob" 、 "log:GetJob" 、 "log:DeleteJob" 、 "log:UpdateJob" 、 "log:PostLogStoreLogs"、 "log:CreateSortedSubStore" 、 "log:GetSortedSubStore" 、 "log:ListSortedSubStore" 、 "log:UpdateSortedSubStore" 、 "log:DeleteSortedSubStore" 、 "log:CreateApp" 、 "log:UpdateApp" 、 "log:GetApp" 、 "log:DeleteApp" 、 "log:GetLogStoreLogs", "ログ: TagResources" 、 "log:ListJobs" 、 "log:ListTagResources" 、 "log:UntagResources" 、 "log:CreateResourceRecord" 、 "log:UpdateResourceRecord" 、 "log:UpsertResourceRecord" 、 "log:GetResourceRecord", "log:DeleteResourceRecord" 、 "log:ListResourceRecords", "log:ListResources", "log:GetResource" 、 "cs:UpdateContactGroup" 、 "cs:DescribeTemplates" 、 "cs:DescribeTemplateAttribute" 、 "eventbridge:PutEvents" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
ワーカーRAMロールの権限
この権限の変更が適用されると、ワーカーRAMロールには、CCM、CSIドライバ、ネットワークコンポーネント、およびロギングコンポーネントに必要な最小限の権限のみが付与されます。
CSIドライバーに必要な最小限の権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "ecs:DescribeDisks", "ecs:DescribeInstances", "ecs: DescribeResourcesModification"、 "ecs:DescribeInstanceTypes", "nas:DescribeFileSystems" 、 "ecs:AttachDisk", "ecs:CreateDisk" 、 "ecs:CreateSnapshot", "ecs:DeleteSnapshot" 、 「ecs:DetachDisk」 ], "Resource": [ "*" ], "Effect": "Allow" } ] }ネットワークコンポーネントに必要な最小権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "ecs:CreateNetworkInterface", "ecs:DescribeNetworkInterfaces", "ecs:AttachNetworkInterface", "ecs:DetachNetworkInterface" 、 "ecs:DeleteNetworkInterface", "ecs:DescribeInstanceAttribute", "ecs:DescribeInstanceTypes", "ecs:AssignPrivateIpAddresses" 、 "ecs:UnassignPrivateIpAddresses" 、 "ecs:DescribeInstances", "ecs:ModifyNetworkInterfaceAttribute" ], "Resource": [ "*" ], "Effect": "Allow" }, { "Action": [ "vpc:DescribeVSwitches" ], "Resource": [ "*" ], "Effect": "Allow" } ] }ロギングコンポーネントに必要な最小権限のポリシーコンテンツ
{ "Version": "1", "Statement": [ { "Action": [ "log:CreateProject", "log:GetProject", "log:DeleteProject" 、 "log:GetLogStore" "log:GetLogStore", "log:UpdateLogStore" 、 "log:DeleteLogStore" 、 "log:CreateConfig" 、 "log:UpdateConfig" 、 "log:GetConfig" 、 "log:DeleteConfig" 、 "log:CreateMachineGroup" 、 "log:UpdateMachineGroup" 、 "ログ: GetMachineGroup" 、 "log:DeleteMachineGroup" 、 "log:ApplyConfigToGroup" 、 "log:GetAppliedMachineGroups" 、 "log:GetAppliedConfigs" 、 "ログ: RemoveConfigFromMachineGroup" 、 "log:CreateIndex" 、 "log:GetIndex" 、 "log:UpdateIndex" 、 "log:DeleteIndex" 、 "log:CreateSavedSearch" 、 "ログ: GetSavedSearch" 、 "log:UpdateSavedSearch" 、 "ログ: DeleteSavedSearch" 、 "log:CreateDashboard", "log:GetDashboard" 、 "log:UpdateDashboard" 、 "log:DeleteDashboard" 、 "log:CreateJob" 、 "log:GetJob" 、 "log:DeleteJob" 、 "log:UpdateJob" 、 "log:PostLogStoreLogs" 、 "log:CreateSortedSubStore" 、 "log:GetSortedSubStore" 、 "log:ListSortedSubStore" 、 "log:UpdateSortedSubStore" 、 "log:DeleteSortedSubStore" 、 "log:CreateApp" 、 "log:UpdateApp" 、 "log:GetApp" 、 "log:DeleteApp" 、 "log:GetLogStoreLogs", "ログ: TagResources" 、 "log:ListJobs" 、 "log:ListTagResources" 、 "log:UntagResources" 、 "log:CreateResourceRecord" 、 "log:UpdateResourceRecord" 、 "log:UpsertResourceRecord" 、 "log:GetResourceRecord", "log:DeleteResourceRecord" 、 "log:ListResourceRecords", "log:ListResources" 、 "log:GetResource" 、 "cs:UpdateContactGroup" 、 "cs:DescribeTemplates" 、 "cs:DescribeTemplateAttribute" 、 "eventbridge:PutEvents" ], "リソース": [ "*" ], "効果": "許可" } ] }