본문 바로가기
SK shieldus Rookies 16기

[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(27일차)

by Challenge programmers 2023. 11. 30.

오늘 학습 주제

1. 클라우드

2. AWS

 

 

 

 

클라우드


- 가상화 -

가상화
정의 물리적인 실체들을 파일로 저장되어 읽히고 실행되는 것이 가상화
특징 • 저장된 파일을 복사하고 저장하는 것이 장점
ex) 실제 PC를 물리적으로 옮긴다면 택배나 이동수단을 이용해야 하지만

가상화로 만들어진 PC는 파일만 이동하면 되기 때문에 편리


똑같은 구조를 쉽게 만들고 이동할 수 있는것이 가장 큰 장점

• 가상화를 이용하면 값비싼 장비를 효율적으로 사용이 가능
  ex)
하나의 서버에 여러 프로그램을 설치해서 사용하면 서로 영향을 받아 효율이 떨어진다
  가상화를 통해 각각의 프로그램들이 독립된 환경에서 사용할 수 있도록 환경을 구성하면
  서버에는 영향이 갈 지라도 프로그램은 영향이 없다

 

 

- 클라우드 -

클라우드
정의 인터넷의 발달과 가상화가 만나 클라우드가 제작
특징 시스템이 운영되고 지원되기 위해 필요한 기본적인 시설이나 시스템을 제공하는 인프라 제공

 

 

- 플랫폼 -

고객의 편의를 위해 하드웨어에 일정 수준의 소프트웨어를 설치하여 

편하게 사용가능하게 하는 것이 플랫폼

 

 

 

 

AWS


- 클라우드 컴퓨팅 -

클라우드 컴퓨팅
정의  IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 것
특징
  1. 민첩성 : 클라우드를 통해 광범위한 기술에 쉽게 액세스할 수 있으므로, 더 빠르게 혁신하고 상상할 수 있는
    거의 모든 것을 구축할 수 있으며, 컴퓨팅, 스토리지 및 데이터베이스와 같은 인프라 서비스부터 사물 인터넷,
    기계 학습, 데이터 레이크 및 분석 등에 이르기까지 필요에 따라 리소스를 빠르게 구동


  2. 탄력성: 향후 최고 수준의 비즈니스 활동을 처리하기 위해 리소스를 사전에 오버 프로비저닝할 필요가 없다
    대신, 실제로 필요한 만큼 리소스를 프로비저닝하면 되며 비즈니스 요구가 변화함에 따라 이러한 리소스를
    확장하거나 축소하여 용량을 즉시 늘리거나 줄이는 것이 가능


  3. 비용절감:고정 비용(데이터 센터, 물리적 서버 등)을 가변 비용으로 전환하고, 사용한 만큼만 IT 비용을
    지불할 수 있으며, 규모의 경제 덕분에 직접 운영할 때보다 가변 비용이 훨씬 더 저렴


  4. 배포: 클라우드를 사용하면 몇 분 만에 새로운 지리적 리전으로 확장하고 전 세계에 배포 가능하여
    애플리케이션을 최종 사용자와 근접하게 배치하면 지연 시간이 단축되고 사용자 경험이 향상
유형
  1. 인프라스트럭처(Infrastructure) as a Service (IaaS): 가상 서버, 스토리지, 네트워킹 등의 기본 인프라를
    제공하여 사용자가 애플리케이션과 데이터를 관리할 수 있게 하여 IT 리소스에 대한 최고 수준의 유연성과
    관리 제어 기능 제공

  2. 플랫폼(Platform) as a Service (PaaS): 애플리케이션 개발을 위한 플랫폼을 제공하여 사용자가
    애플리케이션 코드에 집중할 수 있도록 하여 애플리케이션 실행과 관련된 리소스 구매, 용량 계획,
    소프트웨어 유지 관리, 패치 작업 또는 다른 모든 획일적인 작업에 대한 부담 없이 더욱 효율적으로 운영


  3. 소프트웨어(Software) as a Service (SaaS): 완전한 소프트웨어 애플리케이션을 제공하여 사용자가
    웹 브라우저를 통해 이를 이용할 수 있게 합니다.

 

 

- 컨테이너 -

컨테이너
정의 서로 다른 어플리케이션들이 격리된 환경에서 실행될 수 있도록 하는 가상화 기술
특징
  • 자원효율: 여러 컨테이너가 단일 호스트에서 실행될 수 있으며, 운영체제 수준에서 자원을 효율적으로 공유하므로 높은 효율성을 제공

  • 빠른 배포: 컨테이너는 이미지로 빌드되며, 이 이미지를 사용하여 애플리케이션을 쉽게 배포

  • 개발과 운영의 일관성: 개발 환경과 프로덕션 환경이 동일하게 유지됨으로써 배포 및 관리의 일관성을 유지

  • 클라우드 네이티브 환경: 컨테이너는 클라우드 환경에서 원활하게 통합되며, 마이크로서비스, 서버리스 등의 클라우드 네이티브 패턴을 지원

 

 

- 분산 네트워크 -

분산 네트워크
정의 여러 지리적으로 분산된 위치에 있는 컴퓨터 시스템이나 네트워크 장치들이 연결되어
통신하고 협력하는 네트워크 시스템
특징
  • 클라우드 컴퓨팅: 컴 퓨팅 자원이 분산된 데이터 센터에 위치하고, 이 자원에 접근하는 클라이언트는
    네트워크를 통해 서비스를 이용
     Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP) 등


  • 분산 컴퓨팅: 여러 컴퓨터가 연결되어 병렬로 연산을 수행하고, 작업을 나눠서 처리하는 분산 컴퓨팅 환경
    클러스터 컴퓨팅, 그리드 컴퓨팅, 병렬 컴퓨팅 등
    (클러스터: 여러 컴퓨터 또는 서버가 네트워크를 통해 연결되어 하나의 단일 시스템처럼 동작하는
    컴퓨터 시스템의 집합)

 

 

- 오케스트레이션 -

오케스트레이션
정의 여러 컴퓨터 시스템, 서비스, 프로세스 등을 조율하고 통합하여 하나의 통합된 시스템
또는 서비스로 동작하도록 하는 자동화된 프로세스
특징
  1. 컨테이너 오케스트레이션:
    • 목적: 도커와 같은 컨테이너 기술을 사용하는 애플리케이션을 효율적으로 관리하고 배포하기 위해 사용
    • 특징:
      • Kubernetes, Docker Swarm, Apache Mesos와 같은 오케스트레이션 도구를 사용하여
        여러 컨테이너의 배포, 스케일링, 로드 밸런싱 등을 자동화.
      • 서비스 디스커버리, 롤링 업데이트, 자동 복구 등을 지원하여 애플리케이션의 운영을 단순화하고
        안정성 증가
  2. 클라우드 인프라스트럭처 오케스트레이션:
    • 목적: 클라우드 환경에서 인프라스트럭처 자원을 효율적으로 관리하고 서비스를 자동으로
      구성하기 위해 사용
    • 특징:
      • Infrastructure as Code (IaC) 도구를 사용하여 클라우드 리소스를 정의하고 배포.
      • Terraform, AWS CloudFormation 등

 

 

- 클라우드 종류 -

클라우드 종류
Public Cloud 가입하고 돈을 지불하면 사용 가능
private cloud 회사 내에서 사용가능하게 구축한 클라우드
Hybrid Cloud public private 섞인 것

 

 

- AWS 요금 -

AWS 요금
특징
  1. 사용량에 따른 요금: 사용량에 따라 지불하는 방식을 통해 예산을 과도하게 할당하거나 변화에 대한
    응답성을 개선하지 않고도 변화하는 비즈니스 요구에 손쉽게 대응이 가능하며 종량 과금제 모델을 통해
    예측이 아니라 필요에 따라 비즈니스에 대응하여 용량을 오버프로비저닝하거나 언더프로비저닝하는
    위험을 줄일 수 있음
    클라우드를 사용하는 가장 큰 이유

  2. 커밋(약정)을 통한 요금 : Savings Plans는 AWS 컴퓨팅 및 AWS Machine Learning에서
    특정한 양(USD/시간으로 측정)의 AWS 서비스 또는 서비스 범주를 1년 또는 3년 기간으로 사용하는 약정을
    조건으로 온디맨드보다 낮은 요금을 제공


  3. 더 많이 사용하여 더 적은 비용 지불 : 대량 구매 할인을 받고 사용량 증가에 따라 상당한 비용 절감을
    실현가능하며, S3와 같은 서비스는 요금이 계층화되어 더 많이 사용할수록 GB당 요금이 줄어듬
    또한, AWS에서는 고객이 비즈니스 요구를 처리하는 데 도움이 되는 서비스를 확보할 수 있도록 옵션을 제공
     

 

 

- AWS 종류-

AWS 종류
특징
  1. Amazon:   AWS의 기본 빌딩 블록으로 볼 수 있으며, 대부분의 기본적인 클라우스 컴퓨팅 요구사항을
    충족시키는데 사용
    ⇒ EC2(Elastic Compute Cloud), S3(Simple Storage Service), RDS(Relation Database Service)


  2. AWS : 특별한 작업, 데이터 처리, 서버리스 컴퓨팅, 데이터 분석 등과 같이 더 특화된 작업을 위한 솔루션
    ⇒  Lambda, Glue, Step Functions
       

 

 

- 공동 책임 모델 -

공동 책임 모델
고객
(Customer)
  • 데이터: 데이터의 보안 및 암호화는 고객이 책임

  • 애플리케이션 수준의 보안: 배포한 애플리케이션과 데이터에 대한 보안을 책임

  • 엑세스 관리 및 권한 부여: AWS의 Identity and Access Management(IAM)을 사용하여
    액세스 제어 및 권한 부여를 고객이 관리

  • 네트워크 구성 및 방화벽: 고객은 가상 네트워크 구성, 방화벽 설정 등을 관리
AWS
  • 글로벌 인프라의 물리적 보안: AWS는 전 세계에 분산된 데이터 센터에서 물리적인 보안과
    기간별로 감사되고 인증된 보안 프레임워크를 제공

  • 네트워크 아키텍처 및 기반 서비스 보안: AWS는 가상 네트워크, 서버 및 스토리지의 보안을 책임

  • 호스팅된 서비스 보안: AWS에서 제공하는 다양한 관리형 서비스의 보안을 AWS가 책임

 

 

- 글로벌 인프라 -

글로벌 인프라
특징
  • 리전(rigion): 지역적인(물리적인) 데이터 센터의 묶음을 의미하며 전 세계 32개를 가지고 있음
    각각의 리전은 지리적 영역 내에서 격리되고 물리적으로 분리된 최소 3개의 AZ로 구성
    격리되고 물리적으로 분리되어 있기에 안정적인 서비스 제공 가능

  • 가용영역(AZ) : AWS 리전의 중복 전력, 네트워킹 및 연결이 제공되는 하나 이상의 개별 데이터 센터로 구성
    단일 데이터 센터를 사용하는 것보다 더 높은 가용성, 내결함성 및 확장성을 갖춘 프로덕션 애플리케이션과
    데이터베이스를 운영 가능(정전, 낙뢰, 지진, 화재 등의 문제로부터 서비스를 안전하게 보호) 
    모든 AZ는 높은 대역폭, 지연시간이 짧은 네트워킹, 완전한 중복성을 갖춘 전용 매크로 광 네트워크와 상호
    연결되어 있어 높은 처리량과 지연 시간이 짧은 네트워킹을 제공
    AZ간의 모든 트래픽은 암호화
    모든 AZ는 서로 100km(60마일) 이내의 거리에 위치

  • 로컬 영역: AWS 서비스를 최종 사용자에게 더 가까운 위치에서 실행할 수 있게 하는 것
    지연 시간에 민감한 애플리케이션을 실행할 수 있게 하는 AWS 리전의 확장
    지연시간이 10밀리초 미만이어야 하는 매우 까다로운 애플리케이션을 쉽게 실행 가능

  • AWS Wavelength: 모바일 디바이스 및 최종 사용자에게 10밀리초 미만의 대기 시간을 제공하는
    애플리케이션을 구축해주는 서비스
    모바일 망에서 인터넷으로 전환하는 과정을 생략 가능

  • AWS Outposts: 네이티브 AWS 서비스, 인프라 및 운영 모델을 거의 모든 데이터 센터,
    콜로케이션 공간 또는 온프레미스 시설로 이전하여 일관된 하이브리드 환경을 제공

 

 

- AWS 프리 티어 -

AWS 프리 티어(AWS Free Tier)
정의 사용자들이 AWS 클라우드 서비스를 무료로 체험하고 사용할 수 있는 제공 프로그램
특징
  1. 무료로 제공되는 리소스: 제한된 범위 내에서 특정 서비스의 사용을 무료로 제공
    (Amazon EC2 인스턴스, Amazon S3 스토리지, Amazon RDS 데이터베이스 등이 일정량 무료로 제공)

  2. 12개월 무료 이용 가능: 새로운 AWS 고객에게 최초 가입 후 12개월 동안 제공하며 이 기간 동안에는
    일부 서비스의 사용이 무료이며, 일부 서비스에 대해서는 일정량의 리소스 사용이 무료

  3. 한정된 리소스 및 용량: 프리티어에서 제공되는 리소스와 용량은 제한적이며 초과 사용 시에는
    표준 요금이 적용

  4. 다양한 서비스 포함: 다양한 AWS 서비스를 포함하며, 이를 통해 다양한 클라우드 컴퓨팅, 스토리지,
    데이터베이스, 네트워킹 등을 체험 가능

  5. AWS 계정당 하나의 프리티어 사용 가능: 각 AWS 계정은 한 번만 프리티어를 사용 가능

 

 

- AWS IAM(Identity and Access Management) -

AWS IAM(Identity and Access Management)
정의 AWS 서비스 및 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스
특징
  • 사용자(user), 사용자 그룹(user group), 역할(role), 정책(policy)로 구성

  • 리전에 속하는 서비스가 아닌 글로벌 서비스

 

 

- 보안 강화를 위한 IAM 보안 모범 사례 -

IAM 보안 모범 사례
정의 IAM을 사욤함에 있어 이점을 극대화하기 위한 권장 모범 사례
특징
  • 루트 계정(회원가입시 만들어지는 계정)은 최소 사용자 계정 생성 이후 가능하면 사용하지 말 것
    (루트 계정은 IAM 사용자 생성을 하고 권한 부여를 위해 사용) 

  • 사용자 계정으로 서비스를 사용하고 사용자는 필요한 최소한의 권한만 부여
    (최소 권한의 원칙)

  • 루트 계정과 개별 사용자 계정에 강력한 암호 정책과 멀티팩터 인증 적용

 

 

- 보안 및 엑세스 제어 -

보안 및 엑세스 제어
정의 사용자의 신원을 확인하고, 해당 사용자가 특정 리소스에 대한 권한을 부여하는 프로세스
특징
  • 정보 보안 및 액세스 제어의 핵심 요소이며, 다양한 보안 메커니즘과 기술이 이러한 단계를 지원하고
    강화하기 위해 사용
    • Presentation Layer Access Control : 권한있는 사용자에게 적절한 기능 버튼과 메뉴, 링크를 제공
    • Business Layer Access Control : 권한에 맞는 기능을 제공
    • Data Layer Access Control : 권한에 맞는 데이터 접근을 허용
  • 식별, 인증, 인가가 있음

 

식별(Identification)
정의 "나"라는 것을 알리는 것
특징 사용자 이름, 이메일 주소, 고유한 식별자 등을 통해 사용자를 식별

 

인증(Authentication)
정의 식별 정보로 확인하는 것
특징
  • 사용자가 제공한 정보가 정확한지 확인하고 실제로 그 사용자가 맞는지 결정하는 프로세스

  • 인증 방법을 통해 3가지로 분류
    • Type 1: 내가 알고 있는 것(지식 기반) > 비밀번호, 패스워드 등
    • Type 2: 가지고 있는 것(소유 기반) > 공인인증서, 주민등록증, OTP 등\
    • Type 3: 특징 기반 > 필기체, 서명, 홍체, 정맥, 성문, 지문 등 생물학적 특징을 이용한 바이오(생체)인증
  • 2 가지를 혼용하면 2-factor 인증

  • 2 가지 이상을 혼용하면 Multi-factor 인증

  • Type 1은 인증정보가 입력되는 공간과 서비스가 인증되는 공간이 하나로 이루어져 있어 위험

  • OTP(Type 2), 바이오 인증(Type 3) 등 인증 공간(채널)이 분리되면 공격이 어려워 안전

 

인가(Authrization)
정의 "나"라는 것을 알리는 것
특징 사용자 이름, 이메일 주소, 고유한 식별자 등을 통해 사용자를 식별

 

 

- 사용자(user) -

사용자(User)
정의 AWS의 기능과 자원을 이용하는 객체
사람 또는 응용 프로그램
특징
  • 사용자를 식별하는 방법
    • 사용자 생성 시 지정한 이름
    • 사용자의 고유 식별자
    • ARN(Amazon Resource Name) ⇒  arn:aws:service:region:account-id:resource 형식
      • arn : 모든 ARN의 시작 부분
      • aws : AWS를 나타내는 고정 값
      • service : 리소스를 제공하는 AWS 서비스 (예: S3, Lambda, RDS, ...)
      • region : 리소스가 위치한 AWS 지역 
      • account-id : AWS의 계정 ID
      • resource : 서비스별로 리소스를 고유하게 식별하는 정보
  • 사용자의 자격 증명 방법
    • AWS Management Console 암호 ⇒ 사람이 AWS 서비스를 사용하기 위해서 로그인할 때 사용
    • Access Key = Access Key ID + Secret Access Key ⇒ 프로그램 방식으로 호출할 때 사용
    • SSH 키 ⇒ AWS에 생성한 EC2 인스턴스로 SSH 접속할 때 사용
  • 사용자 계정 추가
    • 주의사항! 비밀번호의 기밀성을 위해 비밀번호 설정 시 사용자는 다음 로그인 시 새 암호를 생성하도록 설정해야함
  •  

 

 

- 사용자 그룹(User group) -

사용자 그룹(User Group)
정의 여러 사용자에게 공통으로 권한을 부여하기 위해서 만든 개념
특징
  • 매번 사용자가 추가될 때마다 권한을 부여하고 삭제하는거나 권한을 일관적으로 변경하는 것이 어렵기 때문에
    특정 그룹을 생성하여 그룹에 속한 사용자에게 권한을 동일하게 부여

 

 

- 권한(Permission) -

권한(Permission)
정의 AWS의 서비스나 자원에 어떤 작업을 할 수 있는지 여부를 명시한 규칙

 

 

- 정책(Pilicy) -

정책(Policy)
정의 자격 증명이나 리소스와 연결될 때 해당 권한을 정의하는 AWS의 객체
특징
  • 권한의 모음으로 사용자, 사용자 그룹, 역할에 적용이 가능

  • 사용자, 사용자 글부, 역할에 권한을 직접 적용할 수 없고, 정책을 생성한 후 적용해야 함
종류
  • 자격 증명 기반 정책
    • IAM 사용자, 그룹 또는 역할에 연결되는 자격 증명이 수행할 수 있는 작업(권한)을 지정
    • 관리형 정책
      • AWS 계정에 속하는 다수의 사용자, 그룹 역할에 독립적으로 연결할 수 있는 자격 증명 기반 정책
    • 인라인 정책
      • 단일 사용자, 그룹, 역할에 직접 추가하는 정책
  • 리소스 기반 정책
    • S3 버킷과 같은 리소스에 연결하는 정책으로 지정된 보안 주체에 해당 리소스에 대한 특정 작업을
      수행할 수 있는 권한을 부여하고 이러한 권한이 적용되는 조건을 정의
    • 인라인 정책이며 관리형 리소스 기반 정책은 없음(리소스에 따라 달라지기 때문에 미리 정의 불가)
  • 권한 경계
    • 관리형 정책을 사용해 자격 증명 기반 정책이 IAM  엔터티(사용자, 그룹, 역할)에 부여할 수 있는
       최대 권한을 설정하기 위한 고급 기능
    • 엔터티의 권한 경계 설정을 통해 자격 증명 기반 정책 및 관련 권한 경계 모두에서 허용되는 작업만
      수행할 수 있음
    • 리소스 기반 정책은 권한 경계에 제한을 받지 않음
  • 서비스 제어 정책
    • 조직의 권한을 관리하는데 사용할 수 있는 조직 정책 유형
    • 조직의 모든 계정에 사용 가능한 최대 권한에 대한 중앙 제어를 제공
  • ACL(접근 제어 목록)
    • 리소스에 엑세스할 수 있는 다른 계정의 보안 주체를 제어할 수 있는 서비스 정책
    • JSON 정책 문서 형식을 사용하지 않는 유일한 정책 유형
    • S3, WAF, VPC는 ACL을 지원하는 대표적인 서비스
  • 세션 정책
    • 역할 또는 페더레이션 사용자에 대해 임시 세션을 프로그래밍 방식으로 생성할 때 파라미터로
      전달하는 정책
    • AssumRole, AssumeRoleWithSAML, AssumeRoldWithIdentitu 같은 API 작업을 사용하여 프로그래밍
      방식으로 역할 세션을 생성하고 세션 정책을 전달

 

 

-JSON 정책 문서 -

JSON 정책 문서
정의 AWS의 서비스나 자원에 어떤 작업을 할 수 있는지 여부를 명시한 규칙
구조
  • 문서 상단에 위치하는 정책 전반의 선택정 정보

  • 하나 이상의 Statement로 구성

  • 각 Statement에는 단일 권한에 대한 정보가 포함
요소
  • Version - 사용하고자 하는 정책 언어의 버전을 지정하며 최신 2012-10-17 버전을 사용 권장 
  • Statement - 이 주요 정책 요소를 다음 요소의 컨테이너로 사용하며 정책에 설명문 둘 이상을
    포함 가능
    • 단일문 또는 개별문의 배열을 포함
    • "Statement" : [ { ... }, { ... }, { ... } ]
  • Sid(선택 사항) - 선택 설명문 ID를 포함하여 설명문들을 구분.
  • Effect - Allow 또는 Deny를 사용하여 정책에서 액세스를 허용하는지 또는 거부하는지 여부를 설명
    • 문의 허용 또는 명시적 거부를 지정
    • Allow 또는 Deny 값을 가짐(대소문자를 구분)
    • 기본적으로 리소스 액세스는 거부되므로, 리소스 액세스를 허용하려면 Allow로 설정
  • Principal(일부 상황에서만 필요)
    • 리소스 기반 정책을 생성하는 경우 액세스를 허용하거나 거부할 계정, 사용자, 역할 또는
      페더레이션 사용자를 표시
  • Action(필수)
    • 특정 작업의 허용 또는 거부 여부를 지정
  • Resource(필수)
    • 문에서 다루는 객체 ARN을 사용해 지정
  • Condition(선택 사항)
    • 정책에서 권한을 부여하는 상황을 지정

 

 

- 안전한 권한 부여 방법 ⇒ 최소 권한 부여 -

안전한 권한 부여 방법
정의 IAM 정책을 생성할 때는 최소 권한 부여의 표준 보안 조언을 따르거나,
작업 수행에 필요한 최소한의 권한만 부여
사용자(역할)가 수행해야 하는 작업을 파악한 후
사용자들이해당 작업만 수행하도록 사용자에 대한 정책을 작성
특징
    • 방법 1. 모든 리소스에 모든 동작을 허용  필요 이상의 권한을 부여  안전하지 않음
      {
       "Resource": "*",
       "Action": "*",
       "Effect": "Allow"
      }
    • 방법 2. DynamoDB 액션을 구체화 ⇒ DynamoDB의 모든 테이블에 대해  read/write  가능
      → (접근하면 안되는) 다른 테이블에 대해서도 접근이 가능하므로 안전하지 않음
      {
       "Resource": "*",
      "Action": [
                    "dynamodb:GetItem", ⇐ DynamoDB에 대한 구체적인 동작(액션)
                    "dynamodb:PutItem"
      ],
      "Effect": "Allow"
      }
    • 방법 3. 특정 DynamoDB 리소스로 한정 ⇒ myDynamoDBTable 테이블에 대해선 read/write하도록 제한
      {
      "Resource": "arn:aws:dynamodb:us-east-2:123456789012:table/myDynamoDBTable",
      ⇐ 사용할 테이블을 지정(한정)
      "Action": [
                    "dynamodb:GetItem",
                    "dynamodb:PutItem"
      ],
      "Effect": "Allow"
      }
    • 방법 4. 특정 조건을 명시 ⇒ IP 주소가 1.2.3.4에서 접근하는 경우에만 myDynamoDBTable 테이블에 대해
      read/write하도록 제한
      {
       "Resource": "arn:aws:dynamodb:us-east-2:123456789012:table/myDynamoDBTable",
       "Action": [
                   "dynamodb:GetItem",
                   "dynamodb:PutItem"
       ],
       "Effect": "Allow",
       "Condition": [
                    "IpAddress": {
                                "aws:SourceIp": "1.2.3.4" ⇐ 소스 IP를 제한
                     }
       ]
      }

 

 

- 역할(Role) -

역할(Role)
정의 사용자가 아닌 특정 서비스에서 생성한 객체에 권한을 부여하는데 사용
특징 어떤 행위를 하는 객체에게 여러 정책을 적용한다는 점에서는 사용자와 비숫하지만,
객체가 사용자가 아닌 서비스나 다른 AWS 계정의 사용자라는 차이가 있음