1. AWS Management Console
- 비유: 집의 정문으로 들어가는 것과 같습니다.
- 보안: 비밀번호와 MFA(Multi-Factor Authentication)로 보호됩니다.
- 설명: MFA는 마치 이중 잠금장치와 같습니다. 비밀번호(알고 있는 것)와 보안 장치(소유하고 있는 것)를 동시에 사용하여 보안을 강화합니다.
2. AWS Command Line Interface (CLI)
- 비유: 집의 뒷문으로 들어가는 것과 같습니다.
- 보안: 접근 키(Access Key)에 의해 보호됩니다.
- 설명: CLI는 명령어를 통해 AWS 서비스를 제어합니다. 마치 집 안의 모든 전자기기를 음성 명령으로 제어하는 것과 비슷합니다.
- 특징: 오픈소스로, 누구나 개선에 참여할 수 있습니다.
3. AWS Software Development Kit (SDK)
- 비유: 집 안의 모든 시스템을 자동화하는 것과 같습니다.
- 보안: CLI와 마찬가지로 접근 키로 보호됩니다.
- 설명: SDK는 프로그래밍 언어를 사용해 AWS 서비스를 제어합니다. 마치 집 안의 모든 기능을 자동으로 제어하는 스마트홈 시스템을 구축하는 것과 비슷합니다.
접근 키(Access Key)에 대한 중요 사항
- 생성: 관리 콘솔에서 생성 가능합니다.
- 주의사항: 절대로 공유하면 안 됩니다. 이는 집의 열쇠를 다른 사람에게 주는 것과 같습니다.
AWS CLI와 SDK의 차이점
- CLI: 명령줄에서 직접 AWS 서비스를 제어합니다. 마치 집 안의 각 기기를 일일이 음성 명령으로 조작하는 것과 같습니다.
- SDK: 프로그램 코드 내에서 AWS 서비스를 제어합니다. 마치 미리 프로그래밍된 스마트홈 시스템이 자동으로 집 안의 모든 것을 관리하는 것과 같습니다.
AWS CloudShell 주요 특징
1. 제한된 리전 가용성
- AWS CloudShell은 모든 리전에서 사용 가능한 것은 아닙니다3.
- 특정 상용 리전에서만 운영되며, 최근에 기능이 확장되었습니다.
2. AWS CLI 명령어 지원
- AWS 명령어를 직접 실행할 수 있습니다12.
- 예:
aws --version
으로 AWS CLI 버전 확인 가능.
3. 환경 지속성
- CloudShell에서 생성한 환경은 세션 종료 후에도 유지됩니다12.
- 텍스트 파일 생성, 다운로드, 업로드 기능 제공.
4. 사전 설치된 도구
- AWS CLI, SDK, Git, Python, Node.js, Java 등 다양한 도구가 미리 설치되어 있습니다2.
5. 무료 사용
- CloudShell 자체는 무료로 사용 가능하며, 1GB의 영구 스토리지 제공2.
IAM 역할 (Identity and Access Management Role)
- 정의: IAM 역할은 사용자와 유사하지만, 실제 사람이 아닌 AWS 서비스를 위해 만들어진 자격 증명입니다.
- 용도: 서비스나 애플리케이션에 필요한 권한을 부여하는 데 사용됩니다.
- 예시: EC2 인스턴스에 IAM 역할을 연결하여 해당 인스턴스가 특정 AWS 리소스에 접근할 수 있도록 합니다.
- 작동 방식:
- 서비스(예: EC2)에 대한 IAM 역할 생성
- 역할에 필요한 권한 정책 연결
- 서비스에 역할 할당
- 서비스는 할당된 역할의 권한으로 다른 AWS 리소스에 접근
검토 해야하는 내용
IAM 보안 도구
- IAM 자격 증명 보고서
- 계정 수준의 보안 도구
- 모든 사용자의 자격 증명 상태 포함 (접근 키 상태, MFA 설정 여부, 마지막 로그인 시간 등)
- IAM 액세스 관리자
- 사용자 수준의 도구
- 사용자의 서비스 권한과 마지막 액세스 시간 표시
- 최소 권한 원칙 실천에 유용
IAM 사용자 그룹
- IAM 사용자 그룹은 IAM 사용자들을 포함할 수 있습니다.
- 하나의 IAM 사용자는 여러 그룹에 속할 수 있습니다.
- 그러나 IAM 사용자 그룹은 다른 사용자 그룹을 포함할 수 없습니다.
IAM 정책 구조
IAM 정책은 하나 이상의 문장(Statement)으로 구성됩니다. 각 문장은 다음 요소를 포함할 수 있습니다:
- Version: 정책 언어 버전 (보통 "2012-10-17")
- Id: 정책 식별자 (선택사항)
- Statement: 하나 이상의 개별 문장
- Sid: 문장 식별자 (선택사항)
- Effect: "Allow" 또는 "Deny"
- Principal: 정책이 적용될 대상
- Action: 허용/거부되는 API 호출 목록
- Resource: Action이 적용될 리소스 목록
- Condition: 정책이 적용될 조건 (선택사항)
공부 한줄평
- 하나의 새로운 컴퓨터에 접속하고 어떻게 인증할것인가에 배우는 단계 새로운 용어들도 많고 개념들도 많다.