Lightsail에서 IAM 사용자로 권한 접근하기
안녕하세요 🐸
IAM 사용자와 그룹을 만들어서 관리하는 방법을 한번 찍먹해보겠습니다.
사용자 그룹이 사용하는 권한 정책은 이미 종류별로 다양하게 만들어져있습니다.
하지만 직접 권한을 작성해보겠습니다.
IAM 사용자 그룹 생성하기
다음 그룹 생성 버튼을 눌러봅시다.
지금은 그룹이 없는 깨끗한 상태입니다.
접근 후 세 가지 선택 요소가 나옵니다.
저는 해당 사용자 그룹은 S3에만 접근 가능한 그룹으로 하기 위해 IAM-TEST-FOR-S3 라는 이름을 지어봤습니다
이후 스크롤을 내려 우측 하단의 사용자 그룹 생성 버튼을 눌러 그룹을 생성합니다.
IAM 사용자 생성하기
IAM 에 접근 후 좌측 패널에서 사용자 를 눌러봅시다.
사용자 생성 버튼을 눌러 봅시다.
사용자 이름을 적고 다음 을 눌러봅시다.
저는 S3를 사용하는 IAM 사용자를 만들 생각이므로 이름도 그에 맞게 지어봤습니다.
직전에 생성한 사용자 그룹에 연결해보겠습니다.
마지막에는 본인이 설정한 대로 되었는지 확인만 하면 됩니다. 사용자 생성 을 누릅시다.
드디어 사용자가 만들어졌습니다.
하지만 아직은 그룹과 사용자가 만들어져만 있을 뿐, 어떠한 권한도 부여되어있지 않은 빈 깡통입니다.
이제 여기에 권한을 부여해보겠습니다.
IAM 사용자 그룹 권한 부여하기
직전에 생성한 사용자 그룹에 들어가서 권한 탭으로 이동해봅니다.
현재는 아무런 권한도 없는 깨끗한 상태입니다.
권한 추가 버튼을 눌러 인라인 정책 생성 을 누릅니다.
아래 화면에서 이제 그룹의 권한을 지정할 수 있습니다.
시각적 과 JSON 에서 선택할 수 있습니다.
JSON 을 사용하는 것이 AWS 이해에 도움이 될 수 있지만, 시각적 을 사용하는 것이 초보자에게 직관적이고 쉽습니다.
저는 S3에 대한 권한을 부여하고 싶으므로 서비스 선택에서 S3 서비스를 선택했습니다.
S3를 선택했을 때 나오는 액세스 수준입니다.
먼저 Effect 는 허용/거부 로 나뉘며 허용 을 선택할 경우 선택한 액세스 수준을 허용하는 것을 기준으로 권한이 작성되고, 거부를 선택한다면 선택한 액세스 수준을 거부하는 것으로 권한이 작성됩니다.
기본적으로 부여되지 않은 권한에 대해서는 허용되지 않기 때문에 허용하고자 하는 권한을 추가하기 위해 허용 을 선택하고 작성합니다.
그리고 액세스 수준 옆의 정보 를 눌러 어떠한 내용인지 알 수 있습니다.
하지만 하나하나 알기에는 너무 많기 때문에 S3 버킷에 저장/읽기/삭제 권한만 부여해보겠습니다.
부여할 액세스 수준은 아래의 3개 입니다.
- getObject
- putObject
- deleteObject
리소스 에서는 이 그룹이 어떤 리소스에 접근할 수 있을지를 정합니다.
ARN 추가 를 누릅니다.
여기서는 시각적 과 텍스트 로 나뉘는데 시각적에서는 버킷의 이름만 적어주면 됩니다.
텍스트 를 선택했다면 본인 버킷의 속성에서 arn 정보를 복사하여 입력합니다.
Resource bucket name 에는 접근할 버킷의 이름을 입력합니다.
그리고 버킷 내에서는 모든 파일에 접근할 수 있게 하기 위해 모든 Object name 을 체크했습니다.
만약 텍스트 를 선택했다면 복사한 arn 뒤에 허용하고자 하는 object name 을 입력해줍니다.
모든 파일에 대해 허용한다면 아래와 같이/*
을 추가해줍니다.
arn:aws:s3:::bucket-name/*
ARN 추가 버튼을 눌러 완료합니다.
마지막으로 다음 버튼을 눌러 정책 생성의 마지막으로 넘어갑니다.
마지막 단계에서는 본인이 작성한 내용이 맞는지 검토하고 정책 이름을 지은 후 정책 생성 을 누릅니다.
IAM 사용자 액세스 키 만들기
앞서 만들었던 사용자의 정보로 들어가 액세스 키 만들기 버튼을 누릅니다
액세스 키 모범 사례 및 대안 이라는 화면이 나오는데 여기서는 사용 사례일 뿐이므로 적절하게 선택합니다.
저는 로컬에서 개발할 때 사용하기 위한 사용자의 액세스 키를 만들것이므로 로컬 코드를 선택했습니다.
여기서는 추가하고 싶은 태그를 넣고 액세스 키 만들기 를 누릅니다.
액세스 키가 만들어졌습니다.
해당 화면을 지나면 비밀 액세스 키는 다시 볼 수 없으므로 필히 복사해서 저장합니다.
혹은 .csv 파일 다운로드 버튼을 통해 파일로 저장해놓습니다.
실제 테스트 하기
.env
파일에서 기존의 액세스 키와 비밀 액세스 키를 새로 발급한 값으로 변경하여 파일을 저장해봤습니다.
잘 저장됐네요!