[Github Action, AWS] Github Action 사용을 위한 AWS 키 발급 받기

Jaeyeon Kim·2023년 4월 26일
1

AWS

목록 보기
1/1

github action을 활용해서 EC2와의 CI/CD 파이프라인을 구축할 때,
workflow의 .yml 파일에 secrets.AWS_ACCESS_KEY_ID, secrets.AWS_SECRET_ACCESS_KEY를 입력해야한다.

이를 활용하기 위해서는 aws에서 키를 발급 받아서 secret 변수에 저장을 해줘야하는데, 처음하면 어려운 작업이니 기록해두려고 한다.

그리고 내 설정에서는 AWS 액세스 유형 선택창이 없어서 매뉴얼하게 권한을 추가하였다.

키 발급 받기

OIDC 공급자 생성

일단 IAM 서비스로 들어간다.

사용자 추가

대시보드에서 사용자 탭을 선택하고 사용자 추가를 클릭한다.

다음과 같이 선택하고, 이름을 정해주고 다음으로 넘어간다.

그룹 생성 및 권한 부여

추후 관리가 용이하도록 그룹을 생성하고 권한을 부여해줄 것이다.
그룹을 생성하자.


이름을 정해주고, 권한은 AmazonEC2FullAccess, AWSCodeDeployFullAccess를 추가해준 후 사용자 그룹을 생성한다.

생성된 그룹을 선택해주고 다음으로 넘어간다.

태그는 옵션으로 생성해주고, 다음으로 넘어가면 아래와 같은 화면이 나온다.

비밀번호는 웬만하면 저장해두자.

여기까지만 진행하면 IAM 사용자로 로그인했을 때 AccessKey를 발급할 권한이 없다고 뜬다.
이 때문에 추가적인 설정이 필요하다.

매뉴얼하게 권한 추가

사용자 탭으로 돌아간 후 권한을 더 추가해줘야한다.

인라인 정책 생성을 클릭한 후,

다음과 같이 액세스 키 생성에 대한 권한을 부여해주고 정책을 생성한다.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "CreateOwnAccessKeys",
            "Effect": "Allow",
            "Action": [
                "iam:CreateAccessKey",
                "iam:GetUser",
                "iam:ListAccessKeys",
                "iam:TagUser"
            ],
            "Resource": "arn:aws:iam::*:user/${aws:username}"
        }
    ]
}

우측 상단의 아이디를 클릭하면 계정ID가 나오는데,
이를 복사하고 로그아웃을 해준다.

IAM 사용자 로그인


IAM 사용자를 선택하고, 복사해둔 계정 ID를 입력해준다.

그 후 나오는 창에서는 이전에 만들었던 계정의 사용자 이름과 암호를 입력해준다.

우측 상단 계정을 클릭한 후 보안 자격 증명 탭을 보면

다음과 같은 창이 활성화가 된 것을 볼 수 있다.

액세스 키 발급

액세스 키 만들기를 클릭하고,

사용 용도에 맞게 선택한 후 다음으로 간다.

이름을 지정해주고 액세스키가 발급된 창에서 .csv 파일을 다운로드하여 저장해두자.

Github secret 등록하기

등록하려는 레포지토리의 Settings탭에서
Secrets and variables -> Actions에서 New repository sercet를 클릭한다.


CSV 파일로 받은 key의 ID과 key를 등록해주자.

이렇게 잘 등록이 된 것을 확인할 수 있고,

        aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
        aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

위와 같이 사용할 수 있다.

profile
낭만과 열정으로 뭉친 개발자 🔥

0개의 댓글