[SAA] 4 IAM 및 AWS CLI

채린·2023년 11월 25일
0

Users & Groups

IAM: Identity and Access Management

Global service

Root account: 회원가입하면 default로 생김

Users: 조직에 있는 사람. 0개 이상의 그룹에 속한다

Groups: User을 포함. 다른 그룹을 포함X

Permissions: User나 Group에 할당하는 JSON 문서인 policy가 정의하는 권한

최소권한 원칙(least privilege principle)

IAM Policies Structure

⭐️구성⭐️

  • Version: policy language version. 항상 “2012-10-17” 포함
  • Id: 정책의 식별자 (optional)
  • Statement (required) 1개 이상의 statements
    • Sid: statement의 식별자 (optional)
    • Effect: 허용할지 거부할지 (Allow / Deny)
    • Principal: 적용할 account/user/role
    • Action: 허용or거부할 action의 list
    • Resource: action적용할 리소스 list
    • Condition: 언제 영향줄지 (optional)

그룹과 사용자 보호

1st:

IAM – Password Policy

Strong passwords = 높은 보안

직접 pw policy 설정 가능:

  • minimum password length
  • Require specific character types
    • including uppercase letters
    • lowercase letters
    • numbers
    • non-alphanumeric character
  • IAM user가 password 바꾸게 허용
  • 특정 기간마다 꼭 바꾸도록 (password expiration)
  • password re-use 방지

2nd:

Multi Factor Authentication - MFA

MFA = password you know + security device you own
→ 비밀번호 알아도 계정 보호됨

⭐️MFA devices options⭐️

  • Virtual MFA device

AWS에 접근

  1. AWS Management Console (password + MFA)
  2. AWS Command Line Interface (CLI): access keys. 컴퓨터 터미널에서 접속
  3. AWS Software Developer Kit (SDK): for code, access keys. 애플리케이션 코드 내부

Access Key ID ~= username
Secret Access Key ~= password

절대공유X

AWS CLI

셸에서 명령어 사용해 AWS 서비스들과 상호작용하게 해주는 도구 (command-line shell)

모든 명령어 aws로 시작

aws 서비스의 공용API로 직접 access

리소스 관리하는 스크립트 개발해 일부 작업 자동화

open-source

AWS SDK

AWS Software Development Kit

특정 언어로 된 라이브러리의 집합(언어마다 개별 SDK존재)

코딩을 통해 어플리케이션에 심어둠 (Embedded)

IAM Roles for Services

policy와 같지만 사용자가 아닌 AWS 서비스가 사용

IAM Security Tools

IAM Credentials Report (account-level): 자격중명 보고서

계정의 사용자와 다양한 자격 증명 상태 포함

IAM Access Advisor (user-level)

사용자에게 부여된 서비스와 그 서비스에 마지막으로 엑세스한 시간 조회 가능

최소 권한 원칙에 유용

0개의 댓글