Study/ACC 2기

1주차 - 섹션 1 ~ 4

shin0112 2024. 8. 22. 00:58

개요

AWS SAA 공부 기록하기

Udemy의 AWS SAA 강의를 통해 공부

강의 링크 : https://www.udemy.com/course/best-aws-certified-solutions-architect-associate/


본문

섹션 1, 2

강의 설명이나 aws 회원 가입하는 등 강의 준비가 주라서 패스

섹션 3

  • 리전 : 데이터 센터의 집합
  • 리전 선택 요인
    • 법률 준수 : 나라마다 다른 법률 준수 필요
    • 지연 시간 : 물리적인 거리로 인한 지연 시간 
    • 제공하는 서비스 : 특정 리전에는 지원하지 않는 서비스가 있을 수 있음
    • 요금
  • 가용영역(availability zone; AZ) : 여분의 전력, 네트워크를 가지는 1개 이상의 데이터 센터
    • 재난 발생에 대비해 분리

섹션 4

IAM (Identity and Acceses Management)

  • 루트 계정을 사용하지 말고, 사용자(User)를 생성해야 함
  • 사용자 : User 
    • 하나의 사용자 = 한 사람
    • 그룹으로 묶을 수 있음
    • 하나의 그룹에 여러 사용자
    • 하나의 사용자가 여러 그룹 
  • 정책 : Policy
    • 권한을 부여하기 위해서 사용자에게 지정해줘야 함
  • 권한을 그룹에 지정해준 다음, 그룹에 사용자를 넣어서 손쉽게 지정해줄 수 있다.
  • 정책 뜯어보기
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AwsOrgsAccess",
            "Effect": "Allow",
            "Action": [
                "organizations:DescribeOrganization",
                "organizations:ListAccounts",
                "organizations:ListAWSServiceAccessForOrganization",
                "organizations:ListDelegatedAdministrators"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
  • Version : 정책 언어 버전. 보통 "2012-10-17"임
  • Statement : 구성 요소
    • Sid : 문장 식별 번호
    • Effect : 접근을 허용(Allow)할지 거부(Deny)할지
    • Action : 접근을 허용하거나 거부할 api 리스트
    • Resource : action이 적용될 리소스 리스트
  • 이미 존재하는 정책을 가져와서 존재하지 않지만, 직접 Principal이랑 Condition도 정의가 가능함
  • json 수정해서 직접 정책을 만들 수도 있음

MFA

  • 루트와 IAM 유저를 보호하기 위해 비밀번호보다 더 보안을 강화하는 것
  • 비밀번호를 잃어버려도 계정을 훔쳐질 가능성이 적음

AWS 접근법

  1. 웹 (AWS console) - 계정
  2. CLI - 엑세스 키
  3. SDK - 엑세스 키

AWS CloudShell

  • os에서 제공하는 터미널 사용 대신 사용할 수 있는 aws에서 무료로 제공해주는 터미널
  • 추가적으로 편의성을 제공해주는 기능 존재
  • 제공하는 리전 확인해야 함

Role

  • 사용자와 같지만 aws service에 권한을 부여해주는 것
  • ec2가 aws에 접근할 때 ec2에 권한을 부여해줘야 함

 


의문

1. AdministratorAccess는 '*' 때문에 모든 리소스, 모든 액션에 접근 가능하다. 그럼 관리자 권한을 사용하면 ec2나 s3 권한 설정을 할 필요가 없어지는건가?

> 진짜로 모든 리소스, 액션에 접근이 가능하므로 추가 설정할 필요가 없다. 하지만 필요한 기능만 제공하는 게 좋기 때문에 권한을 주지 않는 것이 가장 좋다.