💻 [AWS] IAM 개념, 기능 및 IAM 사용자 추가하기
객체 스토리지 서비스로 업계 최고의 확장성과 데이터 가용성, 보안 및 성능을 제공한다.스토리지 클래스. 스토리지별로 데이터를 넣을 수 있다.Public으로 관리할 건지 Private 하게 관리할 건지 설정이 가능하다.스토리지 로깅 및 모니터링 기능이 있다.S3를 사용해 정적 웹 사이트를 호스팅할 수 있다.정적 웹 사이트에서 개별 웹 페이지는 정적 콘텐츠를 포함하고, 클라이언트 측 스트립트를 포함할 수도 있다. (동적 웹 사이트는 PHP, JSP 또는 ASP.NET 등 서버 측 스크립트를 포함한 서버 측 처리에 의존한다.)html 파일을 생성된 버킷에 업로드 해 준 후 속성 -> 정적 웹 사이트 호스팅을 선택해 정적 웹 사이트 호스팅을 활성화해 준 후에 호스팅 유형을 정적 웹 사이트로 해 주고 변경 사항을 저장해 준다.정적 웹 사이트 호스팅에 버킷 웹 사이트 엔드 포인트에 URL이 생기게 된다.권한 -> 퍼블릿 액세스 차단으로 가 차단을 풀어 주고, 버킷 정책에서 정책 생성기 등을 통해 모두가 진입할 수 있도록 설정한 후 정책을 부여해 주면 된다. (이건 부여할 정책에 따라 다르게 설정할 수도 있다.)
먼저 백엔드(Back-end)단의 서비스를 Spring Boot를 통해 만들어 준다.
Github Repository에 1에서 만든 백엔드(Back-end) 서비스를 commit 및 push 해 준다.
VPC 구성
두 개의 가용 영역(AZ)이 있기 때문에 VPC를 생성할 때 가용 영역을 2 개로 설정해 준다. Public Subnet과 Private Subnet은 각각 두 개씩 존재하며 Private Subnet을 위한 하나의 NAT Gateway가 필요하다.Internet Gateway 하나는 default로 존재하기 때문에 설정을 바꾸지 않는다.Elastic Beanstalk 애플리케이션 생성
Spring Boot를 사용했기 때문에 플랫폼은 JAVA를 선택해 준다.VPC를 선택해 준다.Private subnet에 존재하기 때문에 인스턴스 설정 시 서브넷 영역으로 선택해 주어 서브넷에 애플리케이션이 생성될 수 있도록 해 준다.Elastic Beanstalk을 생성할 때 VPC 설정을 무조건 해 주도록 한다. (필수는 아니지만 절차가 복잡하다.)Elastic Beanstalk이 생성되면 자동적으로 그에 해당하는 EC2가 생성된다.Baston host에 해당하는 EC2 생성
VPC를 선택할 때 Public subnet을 선택해 준다. (구조 참고)1. 멀티 팩터 인증(MFA) - 다요소 인증
Password(내가 아는) +Security Device(내가 소유한)- 내가 아는 비밀번호와 내가 가진 물리적 장치
- 특정 User가 비밀번호를 해킹 당한 상황이라고 해도 해커에게는 User가 소유한 물리적 장치(휴대 전화, 컴퓨터 등)이 추가로 필요해지기 때문에 계정에 침해할 수 없다.
- MFA 장치는 어떤 장치가 있을까?
- Virtual MFA device (가상 MFA 장치)
- Universal 2nd Factor (U2F) Security Key
- Hardware Key Fob MFA Device
- Hardware Key Fob MFA Device for AWS GovCloud (US)
2. ID 페더레이션
- 외부에서 인증된 사용자에게 액세스 권한 제공하는 것을 말한다.
- 사용자가 이미
AWS 외부 자격 증명을 보유 중이라면 사용자가AWS 리소스를 사용해야 할 때 해당 사용자에게도AWS 보안 자격 증명이 필요하다. 자격 증명이 조직 내에서 페더레이션되는 사용자의 권한을 IAM 역할을 사용해 지정할 수 있다.