[AWS] IAM ECR 권한 부족문제

문제상황

AWS ECR 레포지토리에 이미지를 푸쉬하려고 하는데 정책이 부족해서 이미지 푸쉬가 안되는 상태

https://docs.aws.amazon.com/ko_kr/AmazonECR/latest/userguide/repository-policies.html

https://docs.aws.amazon.com/ko_kr/AmazonECR/latest/userguide/security_iam_id-based-policy-examples.html

보통은 위 링크 공식문서에 나와있는 json을 기반으로 정책을 만들것이라고 생각한다.

하지만 위에 나와있는 권한만으로 하려는 액션이 안되는 경우가 있다.


에러메세지

각각의 에러에서 because no identity-based policy allows 다음에 나오는 문구들이 중요하다 

the ecr:GetRegistryPolicy action

the ecr:DescribePullThroughCacheRules action

the ecr:DescribeRegistry action

에러들이 친절하게 내가 어떤 내용을 정책에 넣어야하는지 알려주는것이라고 생각하면 된다. 


해결방법

해결책 1

정책에 와일드카드를 넣어줌으로써 모든 권한을 부여해준다.

주석처리한 밑쪽에 "ecr:*" 이 양식으로 와일드카드를 넣어줘서 해결 할 수 있다.(적기 전 제일 마지막 정책에 반점을 찍는것을 잊지 말자...)

하지만 이건 너무 많은 권한을 주는거라서 정석적인방법도 아니고 권장하는 방법도 아니다. 


해결책 2 

에러 로그를 읽고 정책에 권한을 더 줌으로써 해결가능하다. 

아까 본 오류메세지들을 정책에 나와있는 json 양식에 맞춰서 사용해줌으로써 해결하면 원래 AWS에서 지향하는 취지에 맞는 최소의 권한에 부합하게 된다. 

JUNE .

20'S LIFE IN SYDNEY and BUSAN

    이미지 맵

    DevOps Study/AWS 다른 글

    이전 글

    다음 글