https://github.com/aws-actions/configure-aws-credentials
GitHub Actions 에서 AWS 공식 actions 들을 사용하려면 사용자 인증이 필요하다.
당연히 IAM User 의 access key id 와 secret access key 를 통해서 로그인을 할 수도 있지만 보안상 권장되지는 않는다.
때문에 이와같은 컨테이너 서비스에서는 oidc 페더레이션을 통해서 동적으로 iam role 을 제어하는것이 권장된다고 한다.
설명은 아래에 있고, 고대로 따라하면 된다.

추가하면 이렇게 공급자가 추가된것을 볼 수 있다.
우측 상단에 역할 할당을 누르고, 새 역할을 만들어서 무엇을 할 수 있을지 지정해주자.

웹 자격증명을 선택하면 되고, 아래에 접근가능한 조직, 레포, 브랜치등을 입력하면 된다.
아니면 사용자 지정을 선택하고, 위의 깃허브 가이드에 있는 json 을 복사붙여넣기해도 된다.

이후에는 권한을 추가해주어야 하는데, 나는 docker image 를 빌드해서 push 하고 app runner 를 통해서 돌리는게 목적이므로 ecr 에 push 할 수 있는 권한을 추가했다.

(너무 범용적인 권한 범위를 가진것 같다면, 반대로 ECR registry 의 permissions 에서 iam role 에게 권한을 역으로 부여할수도 있는것 같다.)
생성해주면~ 이렇게 IAM Role 에서 확인이 가능하고, 저기 ARN 을 가지고 이제 github actions 에 들고가면 된다.

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: ${{ env.AWS_REGION }}
role-to-assume: ${{ vars.AWS_ROLE }}
짠 잘 되는것을 확인할 수 있다.
