ECS의 태스크 정의에 설정된 태스크 역할이 유효하지 않을 때

2130 단어 FargateECSAWS

현상



응용 프로그램에서 Java SDK를 통해 사용하는 서비스 정책을 설정한 역할을 ECS 작업 정의로 설정해도 액세스가 거부됩니다.

설정 내용은 다음과 같습니다. (S3의 전체 액세스를 허용한 경우)





오류 메시지
Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: FF8E926F25943A13)
    at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1219) ~[aws-java-sdk-core-1.10.32.jar:?]
    at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:803) ~[aws-java-sdk-core-1.10.32.jar:?]
    at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:505) ~[aws-java-sdk-core-1.10.32.jar:?]
    at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:317) ~[aws-java-sdk-core-1.10.32.jar:?]
    at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3595) ~[aws-java-sdk-s3-1.10.32.jar:?]
    at com.amazonaws.services.s3.AmazonS3Client.getObject(AmazonS3Client.java:1116) ~[aws-java-sdk-s3-1.10.32.jar:?]

해결 방법



ECS 태스크 롤이 추가된 것이 비교적 최근인 것 같고, SDK도 업데이트하지 않으면 이용할 수 없는 것 같습니다.
덧붙여서 이번 에러가 발생했을 때의 버젼이 「1.10.X」였습니다.
  • [업데이트] ECS Task에 IAM 역할을 부여할 수 있습니다.
  • Update AWS Java SDK to support ECS Task Roles

  • 이번 Java용 SDK라면 "1.11.16"이상으로 하면 해결합니다.

    다만, 버전을 새롭게 하는 것에 의한 폐해도 나온다고 생각하므로, 신중하게 실시해 주세요.

    좋은 웹페이지 즐겨찾기