AWS Activate
https://aws.amazon.com/startups/credits?trk=b337e2be-f484-49d6-8cb4-9d5677961015&sc_channel=el&p=ft&z=subnav&loc=3
https://aws.amazon.com/ko/what-is-cloud-computing/?nc1=f_cc
IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한만큼만 비용을 지불하는 것
📢 여기서 잠깐! 온디맨드(On Damand)란?
사용자의 요청에 따라 즉싣 제공/공급하는 서비스 (주문형)
물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신 Amazon Web Services(AWS)와 같은 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터베이스와 같은 기술 서비스에 액세스 가능
On-Premise | Cloud | |
---|---|---|
도입 비용 | 구매 시 많은 예산이 소요되고 장비 교체 시 교체 비용 발생하며 운영이 장기화되면 유지보수 비용 외의 추가 비용 덜 발생 | 월 정액 기반으로 사용한 만큼 요금을 지불 (예측 가능) 하며 서비스 증설로 인한 추가적인 비용 상승이 가능 |
인력 | 시스템 운영 인력 필요 | 시스템 운영 인력이 감원되지만 클라우드 전문 인력 필요 |
구축 기간 | 시스템 설계 후 하드웨어 및 소프트웨어를 조달하고 배치하는데 시간이 걸림 | 클라우드 사업자가 준비한 인프라를 활용하여 신속하게 시스템 구축 가능 |
탄력성 | 서버 구축과 시스템 확장에는 고도의 기술과 비용이 필요하며 구축된 시스템을 확장/축소하는 것이 쉽지 않음 | 컴퓨팅 리소스를 떼어서 팔기 때문에 필요에 따라 필요한 만큼만 시스템의 확장/축소가 가능 |
경제성 | 사전에 시스템 이용 피크 타임을 예측해서 그만큼의 장비와 소프트웨어를 사야하고 피크 타임 외에는 리소스 낭비가 발생할 수 있지만 클라우드에 비해 규모의 경제 작동 X | 사용하고자 하는 기능을 사용하고자 하는 기간만 사용하므로 낭비가 적으며 관리가 제대로 이루지지 않을 경우 과다한 비용이 청구 |
가용성 | 시스템의 이중화 및 백업 등의 조치가 필요 | 재해를 대비한 데이터 센터를 이용하거나 장애에 대비한 시스템 구성 |
CSP(Cloud Service Provider)가 제공하는 서비스로, 특정 기업이나 사용자를 위한 서비스가 아닌 인터넷에 접속이 가능한 모든 사용자를 위한 클라우드 서비스
CSP가 모든 하드웨어/소프트웨어 및 기타 인프라를 소유 및 관리
네트워크, 서버 같은 자원은 각 서비스에서 사용자 별로 권한 관리가 되거나 격리되어 서비스 아용자 간에는 전혀 간섭이 없음
인터넷 또는 개인 내부 네트워크를 통해 일반 사용자가 아닌 특정 사용자(기업, 조직)에게만 제공되는 컴퓨팅 서비스
하드웨어와 소프트웨어는 조직에서만 전용으로 사용
퍼블릭 + 프라이빗
클라우드 컴퓨팅의 세 가지 주요 유형으로 Infrastructure as a Service, Platform as a Service, Software as a Service가 존재
각 클라우드 컴퓨팅 유형은 다양한 수준의 제어, 유연성 및 관리 기능을 제공하므로 필요에 맞는 서비스 세트를 선택 가능
IaaS에는 클라우드 IT를 위한 기본 빌딩 블록이 포함되어 있으며 일반적으로 네트워킹 기능, 컴퓨터(가상 또는 전용 하드웨어) 및 데이터 스토리지 공간에 대한 액세스 제공
IaaS는 IT 리소스에 대한 최고 수준의 유연성과 관리 제어 기능을 제공하는데 이는 많은 IT 부서 및 개발자에게 익숙한 기존 IT 리소스와 가장 유사
PaaS를 사용하면 기본 인프라(일반적으로 하드웨어와 운영 체제)를 관리할 필요가 없어 애플리케이션 개발과 관리에 집중할 수 있음
즉 PaaS는 애플리케이션 실행과 관련된 리소스 구매, 용량 계획, 소프트웨어 유지 관리, 패치 작업 또는 다른 모든 획일적인 작업에 대한 부담 없이 더욱 효율적인 운영이 가능
SaaS는 서비스 공급자에 의해 실행되고 관리되는 완전한 제품 제공
대부분의 경우 SaaS라고 하면 웹 기반 이메일과 같은 최종 사용자 애플리케이션을 의미함
SaaS 오퍼링의 경우 서비스를 유지 관리하는 방법이나 기본 인프라를 관리하는 방법에 대해 생각할 필요 없고 특정 소프트웨어를 어떻게 사용할지만 생각하면 됨
https://aws.amazon.com/ko/compliance/shared-responsibility-model/
AWS 클라우드에서 제공되는 모든 서비스를 실행하는 인프라를 보호할 책임
AWS 클라우드 서비스를 실행하는 하드웨어, 소프트웨어, 네트워킹 및 시설로 구성
IaaS의 경우 고객은 게스트 운영체제의 관리(업데이트, 보안 패치 등), 고객이 인스턴스에 설치한 모든 애플리케이션 소프트웨어 또는 유틸리티의 관리, 인스턴스별로 AWS에서 제공한 방화벽(보안 그룹)의 구성 관리에 대한 책임
데이터 관리(암호화 옵션 포함), 자산 분류, 적절한 허가를 부여하는 IAM 도구 사용의 책임
IAM의 보안 모범 사례
https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/best-practices.html
AWS에서는 사용한만큼 요금을 지불하므로 기업이 민첩성과 응답성을 유지하고 항상 필요한 규모를 충족할 수 있음
사용한만큼 지불하는 요금을 통해 예산을 과도하게 할당하거나 변화에 대한 응답성을 개선하지 않고도 변화하는 비즈니스 요구에 손쉽게 대응할 수 있음
사용한만큼 지불하는 모델에서는 예측이 아니라 필요에 따라 비즈니스에 대응하므로 용량을 오버 프로비저닝하거나 언더 프로비저닝하는 위험을 줄일 수 있음
필요에 따라 서비스 비용을 지불함으로써 혁신과 창조에 주의를 집중하여 조달의 복잡성을 줄이고 비즈니스의 탄력성을 높일 수 있음
Savings Plans
는 AWS 사용량에 대한 요금을 상당량 절감할 수 있는 유연한 요금 모델
이 요금 모델은 AWS 컴퓨팅 및 AWS Machine Learning을 더 저렴한 요금으로 제공
Savings Plans는 특정한 양(USD/시간으로 측정)의 AWS 서비스 또는 서비스 범주를 1년 또는 3년 기간으로 사용하는 약정을 조건으로 온디맨드보다 낮은 요금을 제공
1년 또는 3년 약정으로 Savings Plans에 가입할 수 있으며 AWS Cost Explorer에서 권장 사항, 성능 보고 및 예산 알림 기능을 활용하여 플랜을 손쉽게 관리할 수 있음
AWS에서는 대량 구매 할인을 받고 사용량 증가에 따라 상당한 비용 절감을 실현할 수 있음
S3와 같은 서비스 및 EC2에서 송신되는 데이터 전송 요금은 계층화되어 있음
즉, 더 많이 사용할수록 GB당 요금이 줄어듦
또한, 데이터 수신 요금은 언제나 무료이기에 AWS 사용 요구가 증가함에 따라 도입을 확장하면서 비용은 통제할 수 있는 규모의 경제의 이점을 활용할 수 있음
조직이 성장함에 따라 AWS에서는 고객이 비즈니스 요구를 처리하는 데 도움이 되는 서비스를 확보할 수 있도록 옵션을 제공
예를 들어, AWS의 스토리지 서비스 포트폴리오는 데이터 액세스 빈도와 데이터 검색에 필요한 성능에 따라 비용을 줄일 수 있는 옵션을 제공
비용 절감을 최적화하기 위해서는 성능, 보안 및 안정성을 유지하면서 비용을 절감할 수 있는 적절한 스토리지 솔루션의 조합을 선택해야 함
https://calculator.aws/#/?ch=cta&cta=lower-pricing-calc
단일 인스턴스를 실행하든, 수십 개의 개별 서비스를 실행하든, AWS 요금 계산기를 사용하여 월별 청구액 추산할 수 있음
계산기를 사용하면 개별 또는 여러 요금을 추산하고 템플릿을 사용하여 전체 솔루션을 살펴볼 수 있음
AWS의 기본 빌딩 블록으로 볼 수 있으며 대부분의 기본적인 클라우드 컴퓨팅 요구사항을 충족시키는 데 사용
Amazon EC2
, Amazon S3
, Amazon RDS
특별한 작업, 데이터 처리, 서버리스 컴퓨팅, 데이터 분석 등과 같은 특화된 작업을 위한 솔루션으로 사용
AWS Lambda
, AWS Glue
, AWS Step Functions
https://aws.amazon.com/ko/about-aws/global-infrastructure/?hp=tile&tile=map
33개 지리적 리전 내에 105개의 가용 영역이 있으며 말레이시아, 멕시코, 뉴질랜드, 사우디아라비아, 태국 및 AWS European Sovereign Cloud에 가용 영역 18개와 AWS 리전 6개를 추가하는 계획이 발표
https://aws.amazon.com/ko/about-aws/global-infrastructure/regions_az/?p=ngi&loc=2
리전이란 AWS가 전 세계에서 데이터 센터를 클러스터링하는 물리적 위치를 의미
논리적 데이터 센터의 각 그룹은 가용 영역이라고 함
각 AWS 리전은 지리적 영역 내에서 격리되고 물리적으로 분리된 최소 3개의 AZ로 구성
흔히 리전을 단일 데이터 센터로 정의하는 다른 클라우드 공급자와 달리 모든 AWS 리전의 여러 AZ 설계는 고객에게 여러 가지 이점을 제공
각 AZ는 독립된 전원, 냉각 및 물리적 보안을 갖추고 있으며 지연 시간이 매우 짧은 중복 네트워크를 통해 연결됨
고가용성을 중시하는 AWS 고객은 여러 AZ에서 실행되도록 애플리케이션을 설계하여 내결함성을 한층 더 강화할 수 있음
AWS 인프라 리전은 가장 높은 수준의 보안, 규정 준수 및 데이터 보호 충족
AWS는 다른 어떤 클라우드 공급자보다 더 광범위한 국제적 입지를 제공하며 AWS의 국제적 입지를 지원하고 고객이 전 세계에서 서비스를 이용할 수 있도록 빠르게 새로운 리전을 열고 있음
AWS는 북미, 남미, 유럽, 중국, 아시아 태평양, 남아프리카 및 중동의 리전을 포함하여 여러 지리적 리전을 유지·관리하고 있음
AZ(가용영역)는 AWS 리전의 중복 전력, 네트워킹 및 연결이 제공되는 하나 이상의 개별 데이터 센터로 구성
AZ를 사용하면 단일 데이터 센터를 사용하는 것보다 더 높은 가용성, 내결함성 및 확장성을 갖춘 프로덕션 애플리케이션과 데이터베이스를 운영할 수 있음
AWS 리전의 모든 AZ는 높은 대역폭, 지연 시간이 짧은 네트워킹, 완전한 중복성을 갖춘 전용 메트로 광 네트워크와 상호 연결되어 있어 AZ 간에 높은 처리량과 지연 시간이 짧은 네트워킹을 제공
AZ 간의 모든 트래픽은 암호화됨
네트워크 성능은 AZ 간 동기 복제 기능을 충분히 수행 가능
AZ는 고가용성을 위한 애플리케이션 분할을 용이하게 함
애플리케이션 하나를 여러 AZ에 걸쳐 분할하면 기업의 격리가 더 원활하게 이루어지며 정전, 낙뢰, 토네이도, 지진 등과 같은 문제로부터 안전하게 보호됨
AZ는 다른 모든 AZ와 수 킬로미터에 상당하는 유의미한 거리를 두고 물리적으로 분리
→ 다만 모든 AZ는 서로 100km(60마일) 이내의 거리에 위치
AWS 로컬 영역은 컴퓨팅, 스토리지, 데이터베이스 및 기타 엄선된 AWS 서비스를 최종 사용자에게 더 가까운 위치에서 실행할 수 있게 함
AWS 로컬 영역을 사용하면 미디어 및 엔터테인먼트 콘텐츠 작성, 실시간 게임, 저장소 시뮬레이션, 전자 설계 자동화, 기계 학습과 같이 지연 시간이 10밀리 초 미만이어야 하는 매우 까다로운 애플리케이션을 쉽게 실행 가능
각 AWS 로컬 영역 위치는 최종 사용자에게 근접한 지역에서 Amazon Elastic Compute Cloud, Amazon Virtual Private Cloud, Amazon Elastic Block Store, Amazon File Storage, Amazon Elastic Load Balancing 등의 AWS 서비스를 사용하여 지연 시간에 민감한 애플리케이션을 실행할 수 있는 AWS 리전의 확장
AWS 로컬 영역은 로컬 워크로드와 AWS 리전에서 실행 중인 워크로드 간의 고대역폭 보안 연결을 제공하여 동일한 API와 도구 세트를 통해 전체 리전 내 서비스에 원활하게 다시 연결할 수 있게 함
AWS Wavelength를 사용하면 모바일 디바이스 및 최종 사용자에게 10밀리 초 미만의 대기 시간을 제공하는 애플리케이션을 구축 가능
AWS 개발자는 이동 통신 사업자 데이터 센터 내의 5G 네트워크 엣지에 AWS 컴퓨팅 및 스토리지 서비스를 포함하는 AWS 인프라 배포 환경인 Wavelength Zone에 애플리케이션을 배포하고 해당 리전의 다양한 AWS 서비스에 원활하게 액세스 가능
이를 통해 개발자는 게임 및 라이브 동영상 스트리밍, 엣지의 기계 학습 추론, 증강 및 가상 현실(AR/VR) 등 10밀리 초 미만의 지연 시간이 요구되는 애플리케이션을 제공할 수 있음
AWS Wavelength는 5G 네트워크 엣지에 AWS 서비스를 제공하여 모바일 디바이스에서 애플리케이션에 연결할 때 발생하는 지연 시간을 최소화
애플리케이션 트래픽은 모바일 사업자 네트워크 내의 Wavelength Zone에서 실행되는 애플리케이션 서버로 전송될 수 있음
인터넷에 대한 추가 네트워크 홉으로 인해 대기 시간이 100밀리 초를 초과하는 경우를 방지함으로써 5G의 향상된 대역폭 및 대기 시간을 완전히 활용하지 못하는 상황을 줄여줌
AWS Outposts는 네이티브 AWS 서비스, 인프라 및 운영 모델을 거의 모든 데이터 센터, 콜로케이션 공간 또는 온프레미스 시설로 이전할 수 있음
온프레미스와 AWS 클라우드에서 동일한 AWS API, 도구 및 인프라를 사용하여 일관된 하이브리드 환경 제공 가능
AWS Outposts는 연결된 환경용으로 설계되었으며 짧은 대기 시간 또는 로컬 데이터 처리 필요성에 따라 온프레미스에 유지되어야 하는 워크로드를 지원하는 데 사용 가능
📢 <참고>
2023 클라우드 보안 가이드 AWS
https://aws.amazon.com/ko/iam/
AWS 서비스 및 리소스에 대한 액세스와 ID를 안전하게 관리
사용자(users), 그룹(group), 역할(role), 정책(policy)으로 구성
리전에 속하는 서비스가 아닌 글로벌 서비스
https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/best-practices.html
임시 보안 인증을 사용하여 AWS에 액세스하려면 인간 사용자(user)가 ID 공급자와의 페더레이션을 사용하도록 요구
AWS에 액세스하려면 워크로드에 IAM 역할이 있는 임시 자격 증명을 사용하도록 요구
다중 인증(MFA) 필요
장기 보안 인증이 필요한 사용 사례에 필요한 경우 액세스 키 업데이트
모범 사례를 따라 루트 사용자 보안 인증을 보호
최소 권한 적용
AWS 관리형 정책으로 시작하고 최소 권한을 향해 나아감
IAM 액세스 분석기를 사용하여 액세스 활동을 기반으로 최소 권한 정책 생성
사용하지 않는 사용자, 역할, 권한, 정책 및 보안 인증은 정기적으로 검토하고 제거
IAM 정책의 조건(condition)을 사용하여 액세스 추가 제한
IAM Access Analyzer를 사용하여 리소스에 대한 퍼블릭 및 크로스 계정 액세스 확인
IAM Access Analyzer를 사용하여 IAM 정책을 검증하여 안전하고 기능적인 권한을 보장
여러 계정에 권한 가드레일 설정
권한 경계를 사용하여 계정 내에서 권한 관리 위임
AWS의 기능과 자원을 이용하는 객체
사람 또는 애플리케이션
① 사용자 생성 시 지정한 이름
② 사용자의 고유 식별자
③ ARN(Amazon Resource Name)
arn:aws:service:region:account-id:resouce
~~~ ~~~ ~~~~~~~ ~~~~~~ ~~~~~~~~~~ ~~~~~~~
| | | | | |
| | | | | +-- 서비스별로 리소스를 고유하게 식별하는 정보
| | | | +-- AWS 계정 ID
| | | +-- 리소스가 위치하는 AWS 리전 (선택적일 수 있으며 서비스에 따라 상이)
| | +-- 리소스를 제공하는 AWS 서비스
| | 예) Amazon S3 버킷, AWS Lambda 함수, Amazon RDS 데이터베이스 등
| +-- AWS를 나타내는 고정 값
+-- 모든 ARN의 시작 부분
https://console.aws.amazon.com
💻 발급 받은 계정 확인
💻 IAM 사용자로 로그인 → root 사용자가 생성한 사용자
💻 루트 사용자로 로그인
프로그래밍 방식으로 호출할 때 사용
권한 정책을 선택하지 않고 다음으로 진행
권한이 없으므로 대시보드에 내용이 출력되지 않는 것을 확인
여러 사용자에게 공통으로 권한을 부여하기 위해서 만든 개념
여러 사용자에게 일관된 권한 정책을 쉽게 적용하는 것이 가능
AWS에서 제공하는 서비스나 자원에 어떤 작업을 할 수 있는지 여부를 명시한 규칙
Ex. 서울 리전에 있는 모든 EC2를 조회 가능
자격 증명이나 리소스와 연결될 때 해당 권한을 정의하는 AWS의 객체
권한의 모음으로 사용자, 사용자 그룹, 역할에 적용이 가능
사용자, 사용자 그룹, 역할에 권한을 직접 적용할 수 없고, 정책을 생성한 후 적용해야 함
https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/access_policies.html
자격 증명 기반 정책은 자격 증명(사용자, 사용자 그룹 및 역할)이 무슨 작업을 어느 리소스에서 어떤 조건에서 수행할 수 있는지를 제어하는 JSON 권한 정책 문서
AWS 계정에 속한 다수의 사용자, 그룹 및 역할에 독립적으로 연결할 수 있는 자격 증명 기반 정책
AWS 관리형 정책
AWS에서 생성 및 관리하는 관리형 정책
고객 관리형 정책
▫ 사용자가 자신의 AWS 계정에서 생성 및 관리하는 관리형 정책
▫ 고객 관리형 정책은 AWS 관리형 정책보다 정책에 대해 더욱 정밀하게 제어하는 것이 가능
S3 버킷과 같은 리소스에 연결하는 정책으로 지정된 보안 주체에 해당 리소스에 대한 특정 작업을 수행할 수 있는 권한을 부여하여 이러한 권한이 적용되는 조건을 정의
리소스 기반 정책은 인라인 정책이며, 관리형 리소스 기반 정책은 없음
모든 리소스가 지원하는 것은 아님
관리형 정책을 사용해 자격 증명 정책이 IAM 엔티티(사용자 또는 역할)에 부여할 수 있는 최대 권한을 설정하기 위한 고급 기능
엔티티의 권한 경계 설정을 통해 자격 증명 기반 및 관련 권한 경계 모드에서 허용되는 작업만 수행할 수 있음
리소스 기반 정책은 권한 경계에 제한을 받지 않음
해당 사용자는 권한 경계로 EC2FullAccess 권한을 설정했으므로 IMAFullAccess 권한을 가져도 IAM 작업을 수행할 수 없고 EC2 관련 권한이 설정되어 있지 않으므로 EC2 작업도 할 수 없음 → 해당 사용자는 아무것도 할 수 없는 상태
조직의 권한을 관리하는데 사용할 수 있는 조직 정책 유형
조직의 모든 계정에 사용 가능한 최대 권한에 대한 중앙 제어를 제공
리소스에 액세스 가능한 다른 계정의 보안 주체를 제어할 수 있는 서비스 정책
JSON 정책 문서 형식을 사용하지 않는 유일한 정책 유형
Amazon S3, AWS WAF 및 Amazon VPC → ACL을 사용하는 대표적인 서비스
역할 또는 페더레이션 사용자에 대해 임시 세션을 프로그래밍 방식으로 생성할 때 파라미터로 전달되는 고급 정책
AssumeRole, AssumeRoleWithSAML 또는 AssumeRoleWithWebIdentity API 작업을 사용하여 프로그래밍 방식으로 역할 세션을 생성하고 세션 정책을 전달
Policy 파라미터를 사용하여 단일 JSON 인라인 세션 정책 문서를 전달
PolicyArns 파라미터를 사용하여 최대 10개까지 관리형 세션 정책을 지정
문서 상단에 정책 전반의 선택적 정보
하나 이상의 Statement로 구성
각 Statement에는 단일 권한에 대한 정보가 포함
정책에 여러 Statement가 포함된 경우 AWS는 이를 평가할 때 Statement 전체에 논리 OR를 적용
Version
정책 언어의 버전
최신 버전 "2012-10-17" 사용을 권장
Statement (필수)
단일 문 또는 개별 문의 배열을 포함
"Statement": [ { ... }, { ... }, { ... } ]
Sid
문(statement) 배열에서 각 문에 할당
JSON 정책 내에서 고유해야 하며 정책 문에 대한 설명으로 사용이 가능
Effect (필수)
문의 허용 또는 명시적 거부를 지정
Allow 또는 Deny 값을 가질 수 있음 (대소문자를 구분)
기본적으로 리소스 액세스는 거부되므로, 리소스 액세스를 허용하려면 Effect 요소를 Allow로 설정해야 함
Principal
리소스 기반 정책을 생성하는 경우 액세스를 허용하거나 거부할 계정, 사용자, 역할 또는 페더레이션 사용자를 표시
Action (필수)
특정 작업의 허용 또는 거부 여부를 지정
Resources (필수)
문에서 다루는 객체를 ARN을 사용해 지정
Condition
정책이 효력이 발생하는 시점에 대한 조건을 지정
"Condition" : { "{condition-operator}" : { "{condition-key}" : "{condition-value}" } }
자격 증명 기반 정책으로 example_bucket이라는 하나의 Amazon S3 버킷 목록을 암시된 보안 주체를 허용
{
"Version": "2012-10-17",
"Statement": {
"Resource": "arn:aws:s3:::exampel_bucket",
"Action": "s3:ListBucket",
"Effect": "Allow"
}
}
리소스 기반 정책으로 특정 AWS 계정 구성원이 mybucket 내 버킷 또는 객체에 수행할 수 있는 모든 작업을 허용
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "1",
"Resource": [
"arn:aws:s3:::mybucket", → mybucket 버킷
"arn:aws:s3:::mybucket/*" → mybucket 버킷에 포함된
하위 버킷 또는 파일(객체)
],
"Action": "s3:*",
"Effect": "Allow",
"Principal": {
"AWS": [ "arn:aws:iam::account-id:rrot" ]
}
}
]
}
모든 리소스에 모든 동작을 허용
{
"Version": "2012-10-17",
"Statement": {
"Resource": "*",
"Action": "*",
"Effect": "Allow"
}
]
최소 권한 부여
필요 이상의 권한 부여
↓
안전 X
{
"Resouce": "*",
"Action": "*",
"Effect": "Allow"
}
DynamoDB의 모든 테이블에 대해 read/write가 가능
↓
(접근하면 안 되는) 다른 테이블에 대해서도 접근이 가능하므로 안전 X
{
"Resouce": "*",
"Action": [
"dynamodb:GetItem", <<
"dynamodb:PutItem" <<
],
"Effect": "Allow"
}
myDynamoDBTable에 대해서만 read/write하도록 제한
{
"Resouce": "arn:aws:dynamodb:us-east-
2:123456789012:table/myDynamoDBTable", <<
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem"
],
"Effect": "Allow"
}
IP 주소가 1.2.3.4인 곳에서 접근하는 경우에만 myDynamoDBTable에 read/wirte 할 수 있도록 제한
{
"Resouce": "arn:aws:dynamodb:us-east-
2:123456789012:table/myDynamoDBTable",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem"
],
"Effect": "Allow",
"Condition": [ <<
"IpAddress": { <<
"aws:SourceIp": "1.2.3.4" <<
}
]
}
사용자가 아닌 특정 서비스에서 생성한 객체에 권한을 부여할 때 사용
Ex. 람다 함수가 S3 버킷에서 파일을 읽어 오려면, S3 버킷에 파일을 읽을 수 있는 권한 정책을 만든 뒤 해당 정책으로 역할을 만들어 람다 함수에 지정해야 함
사용자 목록에서 추가된 사용자 확인
인라인 정책 적용
프리 티어 사용 가능한 이미지 선택
내려받은 키 페어 파일은 해당 인스턴스 접속을 위해서 잘 보관해야 함