레이블이 AWS인 게시물을 표시합니다. 모든 게시물 표시
레이블이 AWS인 게시물을 표시합니다. 모든 게시물 표시

[AWS] CloudFront Functions와 Lambda@Edge의 차이점!!




CloudFront Functions와 Lambda@Edge는 모두 CloudFront 이벤트에 대한 응답으로 코드를 실행하는 방법을 제공합니다.

CloudFront Functions는 다음과 같은 사용 사례에 적합한 가볍고 단기 실행 함수에 적합합니다.

  • 캐시 키 정규화 – HTTP 요청 속성(헤더, 쿼리 문자열, 쿠키, URL 경로까지)을 변환하여 최적의 캐시 키를 생성함으로써 캐시 적중률을 개선할 수 있습니다.

  • 헤더 조작 – 요청이나 응답에 HTTP 헤더를 삽입, 수정 또는 삭제합니다. 예를 들어, True-Client-IP모든 요청에 ​​헤더를 추가할 수 있습니다.

  • URL 리디렉션 또는 재작성 – 요청에 포함된 정보에 따라 시청자를 다른 페이지로 리디렉션하거나 모든 요청을 한 경로에서 다른 경로로 재작성합니다.

  • 요청 권한 부여 – 권한 부여 헤더나 기타 요청 메타데이터를 검사하여 JSON 웹 토큰(JWT)과 같은 해시된 권한 부여 토큰을 검증합니다.

CloudFront Functions를 시작하려면 CloudFront Functions를 사용하여 에지에서 사용자 지정을 참조하세요 .

Lambda@Edge는 다음과 같은 사용 사례에 적합합니다.

  • 완료하는 데 몇 밀리초 이상이 걸리는 기능

  • 조정 가능한 CPU 또는 메모리가 필요한 기능

  • AWS SDK(다른 AWS 서비스와 통합하기 위한)를 포함한 타사 라이브러리에 의존하는 기능

  • 외부 서비스를 사용하여 처리하기 위해 네트워크 액세스가 필요한 기능

  • 파일 시스템 액세스 또는 HTTP 요청 본문 액세스가 필요한 기능

Lambda@Edge를 시작하려면 Lambda@Edge로 에지에서 사용자 지정을 참조하세요 .

사용 사례에 맞는 옵션을 선택하는 데 도움이 되도록 다음 표를 사용하여 CloudFront Functions와 Lambda@Edge의 차이점을 파악하세요.

CloudFront 기능람다@엣지
프로그래밍 언어JavaScript(ECMAScript 5.1 호환)Node.js와 Python
이벤트 소스
  • 시청자 요청

  • 시청자 반응

  • 시청자 요청

  • 시청자 반응

  • 원본 요청

  • 원점 응답

Amazon CloudFront KeyValueStore 지원

CloudFront KeyValueStore는 JavaScript 런타임 2.0 만 지원합니다.

아니요

규모초당 10,000,000개 이상의 요청지역당 초당 최대 10,000개의 요청
함수 지속 시간서브밀리초

최대 5초(시청자 요청 및 시청자 응답)

최대 30초(원본 요청 및 원본 응답)

최대 함수 메모리 크기

2MB

128MB(시청자 요청 및 시청자 응답)

10,240MB(10GB)(원본 요청 및 원본 응답)

자세한 내용은 Lambda@Edge의 할당량을 참조하세요 .

함수 코드와 포함된 라이브러리의 최대 크기10KB

50MB(시청자 요청 및 시청자 응답)

50MB(원본 요청 및 원본 응답)

네트워크 접속아니요
파일 시스템 접근아니요
요청 본문에 접근아니요
지리적 위치 및 장치 데이터에 대한 액세스

아니요(시청자 요청 및 시청자 응답)

예(원본 요청 및 원본 응답)

CloudFront 내에서 완전히 빌드하고 테스트할 수 있습니다.아니요
기능 로깅 및 메트릭
가격무료 계층 제공, 요청당 요금 청구무료 계층 없음; 요청 및 기능 기간당 요금 청구
 



참조 : https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/edge-functions-choosing.html



------------------------------------------------------





CloudFront Functions 뷰어 요청 이벤트에서 파일 이름 없이 URL을 요청하기 위한 index.html 추가


다음 코드 예제에서는 CloudFront Functions 뷰어 요청 이벤트에서 파일 이름 없이 URL을 요청하기 위해 index.html을 추가하는 방법을 보여줍니다.



async function handler(event) {
    var request = event.request;
    var uri = request.uri;
    
    // Check whether the URI is missing a file name.
    if (uri.endsWith('/')) {
        request.uri += 'index.html';
    } 
    // Check whether the URI is missing a file extension.
    else if (!uri.includes('.')) {
        request.uri += '/index.html';
    }

    return request;
}






참조 : https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/example_cloudfront_functions_url_rewrite_single_page_apps_section.html





[AWS] SCP, OU, Policy 사용하기 !!







AWS Organization을 활용하여 다수의 aws 계정을 효율적으로 관리하는 방법을 설명합니다.
특히 scpou, Policy의 개념과 역할을 소개하며, 이를 통해 중앙 집중식 관리, 접근 제어 단순화, 통합 결제, 보안 및 감사 등 다양한 장점을 얻을 수 있음을 강조합니다.
기업 환경에서 aws 계정 구조를 조직 구조에 맞게 구성하는 데 중요한 역할을 하는 AWS Organization의 활용법을 다루고 있습니다.



1. AWS Organization 개요

  • AWS Organization은 여러 aws 계정을 관리하는 서비스이다.

  • 엔터프라이즈급 기업은 AWS Organization을 통해 다수의 계정을 연동하고 ou를 생성하여 관리한다.



2. 주요 용어 설명


  • SCP (Service Control Policy)

    • ou 또는 aws 계정에 적용 가능하다.

    • 하위 ou에 상속된다.

    • ou마다 다르게 적용할 수 있다.


  • Permission Boundary & Policy

    • IAM 사용자에게 적용된다.

    • scp와 중첩되어야 정책이 적용된다.


  • OU (Organization Unit)

    • aws 계정의 그룹 단위이다.

    • 하위 ou를 가질 수 있어 회사 구조를 반영할 수 있다.

    • 하나의 aws 계정은 오직 하나의 ou에 속할 수 있다.

    • 최대 5단계의 계층 구조를 가질 수 있다.


  • Management Account

    • ou를 생성한 계정이다.

    • 다른 aws 계정을 초대하거나 포함 및 제거할 수 있다.

    • 오직 하나의 마스터 계정만 존재하며 scp의 영향을 받지 않는다.


  • Account

    • ou에 초대된 aws 계정들이다.

    • 신규 및 기존 aws 계정 모두 ou에 초대 가능하다.


  • IAM Users

    • aws 계정에 속하는 IAM 사용자를 의미한다.

    • Permission boundary와 policy에 영향을 받는다.



3. AWS Organization의 장점


  • 중앙관리와 거버넌스의 일관성

    • 다수의 aws 계정을 일관성 있게 관리할 수 있다.

    • 다른 계정의 서버, 스토리지 및 클라우드 리소스를 효과적으로 관리 가능하다.

    • aws 계정 구조를 기업의 구조에 맞게 구성할 수 있다.


  • 접근제어의 단순화

    • 계정 그룹에 scp를 연결하여 정책을 적용할 수 있다.

    • 개별 AWS 서비스에 대한 허용 또는 거부가 가능하다.

    • 예를 들어, 운영계 ou는 특정 리전에서만 서비스를 생성할 수 있도록 scp를 설정할 수 있다.


  • 통합 결제

    • aws organizations를 통해 모든 aws 계정에 대해 단일 결제 방법을 설정할 수 있다.

    • 모든 계정의 요금을 통합적으로 관리하고 감사할 수 있다.

    • 예를 들어, 10개의 aws 계정에서 발생한 비용을 통합적으로 관리할 수 있다.


  • 중앙 집중식 보안 및 감사

    • AWS CloudTrail을 통해 계정의 모든 이벤트를 감사할 수 있다.

    • 중앙에서 권장 구성 기준을 정의할 수 있다.

    • aws control tower를 사용하여 교차 계정 보안 감사를 설정할 수 있다.

    • security hub 서비스를 통해 보안 툴의 finding을 중앙 집중식으로 관리할 수 있다.



4. 클라우드와 기업 구조

  • 클라우드가 기업의 조직도를 반영할 수 있는지 여부는 중요하다.

  • AWS Organization, ou, scp를 활용하여 기업의 조직도를 클라우드로 구현할 수 있다.





 

SCP (Serive Control Policy)
  • SCP는 OU 또는 AWS account 를 대상으로 적용이 가능하다.
  • SCP는 하위 OU에 상속이 된다.
  • SCP는 OU들에 다르게 적용 가능하다.

 

Permission Boundary & Policy
  • 정책과 경계는 IAM User 대상으로 적용이 가능하다.
  • SCP와 중첩되어야만 정책이 적용된다.

 

OU (Organization Unit)
  • OU는 AWS Account 들의 그룹 단위이다.
  • OU는 하위 OU를 가질 수 있다. 회사 구조를 반영할 수 있다.
  • 하나의 AWS 계정은 오직 하나의 OU에 속할 수 있다. 다른 OU에는 속할 수 없다.
  • OU는 5단계 계증척 구조를 가질 수 있다.

 

management Account
  • OU를 생성한 계정이다.
  • 다른 AWS Account를 초대하거나 OU에서 포함시키거나 제거할 수 있다.
  • 오직 하나의 마스터/루트 계정만이 존재한다.
  • 이 계정은 SCP 의 영향을 받지 않는다.

 

Account 
  • OU에 초대받은 AWS 계정들이다.
  • 신규 AWS 계정들은 OU에 생성되자마자 초대 가능하다.
  • 기존에 존재하는 AWS 계정들도 OU에 초대받을 수 있다.

 

IAM Users
  • AWS Account 에 속하는 IAM 사용자를 의미한다.
  • Permission boundary 와 policy에 직접 영향을 받는다. 



  • 참조 : https://medium.com/awesome-cloud/aws-organizations-overview-introduction-to-what-is-aws-organization-multi-accounts-consolidated-billing-5009efc42b07



 

📈 What Is an ETF? A Beginner's Guide to Smart Investing

📈 What Is an ETF? A Beginner's Guide to Smart Investing 📚 Key Lessons from The Smart Investor's Answer: Your First Step into ETFs ...