https://www.lgcns.com/blog/cns-tech/aws-ambassador/41042/
오류 메시지
Error: updating IAM Role (serviceRoleForECSProdJD): attaching IAM Policy (arn:aws:iam::aws:policy/aws-service-role/AmazonECSServiceRolePolicy) to IAM Role (serviceRoleForECSProdJD): operation error IAM: AttachRolePolicy, https response error StatusCode: 400, RequestID: cddba538-f99a-4e40-84c7-d1ef4c3df90f, PolicyNotAttachable: Cannot attach a Service Role Policy to a Customer Role.
AWS Service-linked role policy은 Custom Role을 만들 때 직접 붙을 수 없기 때문에 생기는 오류이다. 이유는 다음과 같다.
AWS Service-linked role 정책은 사용자가 직접 수정하거나 다른 역할에 직접 연결할 수 없습니다. Service-linked role은 AWS 서비스가 사용자를 대신하여 AWS 리소스를 관리할 수 있도록 설계된 특별한 유형의 역할입니다. 이 역할은 특정 서비스와 연결되어 있으며, 그 서비스가 필요로 하는 권한을 가지고 자동으로 생성됩니다.
예를 들어, Amazon EC2에서 Auto Scaling을 설정할 때 AWS는 Auto Scaling 서비스가 EC2 인스턴스를 시작하고 종료할 수 있도록 허용하는 Service-linked role을 자동으로 생성할 수 있습니다. 이 역할은 AWS가 관리하는 정책에 의해 권한이 설정되며, 사용자는 이 정책을 변경할 수 없습니다.
따라서 Custom Role을 만들 때는 Service-linked role의 정책을 직접 붙일 수 없고, 필요한 권한을 직접 정의하거나 기존 IAM 정책을 연결해야 합니다.