반응형

목차

IAM(Identity and Access Management)

 

Amazon IAM(Identity and Access Management)은 Amazon Web Services 리소스에 대한 액세스를 안전하게 제어하는 데 도움이 되는 웹 서비스입니다. 이를 통해 사용자, 액세스 키와 같은 보안 자격 증명, 사용자 및 애플리케이션이 액세스할 수 있는 AWS 리소스를 제어하는 권한을 관리할 수 있습니다.

주요 개념

 

  1. User(사용자)
    IAM 사용자는 AWS와 상호 작용하는 데 사용하는 사람 또는 애플리케이션을 나타내기 위해 AWS에서 생성하는 엔티티입니다. AWS의 사용자는 이름, AWS 관리 콘솔에 로그인하기 위한 비밀번호, API 또는 CLI와 함께 사용할 수 있는 최대 2개의 액세스 키로 구성됩니다.

  2. Groups(그룹)
    IAM 그룹은 IAM 사용자의 모음입니다. 그룹을 사용하여 사용자 컬렉션에 대한 권한을 지정할 수 있으며, 이를 통해 해당 사용자에 대한 권한을 더 쉽게 관리할 수 있습니다.

  3. Roles(역할)
    IAM 역할은 AWS에서 수행할 수 있는 작업과 수행할 수 없는 작업을 결정하는 권한 정책이 있는 AWS ID라는 점에서 사용자와 매우 유사합니다. 그러나 역할에는 표준 장기 자격 증명(비밀번호 또는 액세스 키)이 연결되어 있지 않습니다. 대신, 역할을 맡으면 역할 세션에 대한 임시 보안 자격 증명을 제공합니다.

  4. Policies(정책)
    정책은 ID 또는 리소스와 연결될 때 해당 권한을 정의하는 AWS의 객체입니다. AWS는 주 엔터티(사용자 또는 역할)가 요청을 할 때 이러한 정책을 평가합니다.

  5. Security Credentials(보안 자격 증명)
    AWS에 프로그래밍 방식으로 요청하려면 AWS 보안 자격 증명을 사용해야 합니다. AWS는 보안 자격 증명을 사용하여 요청을 인증하고 권한을 부여합니다.

안전하고 효율적인 환경을 유지하려면 IAM 모범 사례를 따르는 것이 중요합니다. 이러한 모범 사례에는 최소 권한 액세스, 정기적으로 사용하지 않는 자격 증명 교체 및 제거, 그룹을 사용하여 권한 할당, MFA(다단계 인증) 활성화, 강력한 비밀번호 정책 설정 등이 있습니다.

 

다음은 IAM에서 사용자, 그룹, 규칙을 생성하는 방법에 대해 다루고 있는 포스팅입니다. 참고해보셔도 좋을 것 같습니다.

 

[AWS Cloud] User 및 Group생성하기(IAM)

목차 Group 생성 User 생성 사용자 액세스 키 생성 S3 Browser Group 생성 User 생성 사용자 액세스 키 생성 S3 Browser 위 액세스 키를 생성하는 이유는 보안의 이유도 있지만 이 브라우저를 사용하기 위함

easyitwanner.tistory.com

 

[AWS Cloud] 자신만의 규칙 생성하기 (IAM)

이번 포스팅은 간단하게 역할(룰)을 부여하는 것만 다루어서 목차는 따로 없습니다. 이러한 방식으로 간단하게 대표적인 기능을 정리한 후 각 구성요소에 대해서 설명하는 시간을 갖도록 하겠

easyitwanner.tistory.com

 

목차로 이동

 

IAM 보고서 액세스

 

IAM 보고서 액세스는 외부 엔티티와 공유되는 Amazon S3 버킷 또는 IAM 역할과 같은 조직 및 계정의 리소스를 식별하는 데 도움이 되는 서비스인 AWS의 IAM 액세스 분석기의 일부입니다. 여기에는 AWS 계정 또는 AWS 조직 외부에서 액세스하는 모든 리소스가 포함될 수 있습니다.

IAM 액세스 보고서는 계정의 사용자, 역할 및 서비스에 부여된 액세스를 검토하려는 경우에 특별히 생성됩니다. 이러한 보고서는 특정 리소스에 액세스한 사용자, 시기 및 수행한 작업을 이해하는 데 도움이 됩니다.

생성할 수 있는 액세스 보고서에는 두 가지 유형이 있습니다:

  • IAM 정책 보고서: 리소스에 액세스할 수 있는 AWS 계정의 엔티티(사용자, 역할 및 서비스) 및 해당 엔티티에 부여된 권한에 대한 정보를 제공합니다.

  • 마지막으로 액세스한 정보 보고서: AWS 계정의 엔티티가 리소스에 마지막으로 액세스한 시간을 보여줍니다. 이를 통해 사용하지 않는 권한을 식별하여 해당 권한을 취소할 수 있으므로 최소 권한 원칙을 준수할 수 있습니다.

  • 이러한 보고서를 생성하려면 AWS 관리 콘솔, AWS CLI 또는 AWS SDK에서 IAM 액세스 분석기를 사용할 수 있습니다. 그런 다음 추가 분석을 위해 보고서를 JSON 형식으로 사용할 수 있습니다.

IAM 모범 사례의 일부로, 이러한 보고서를 정기적으로 검토하고 필요에 따라 정책을 조정하여 AWS 리소스의 보안을 유지하는 것이 좋습니다.

 

목차로 이동

 

IAM 액세스 분석기

 

IAM 액세스 분석기는 AWS 계정에 연결된 IAM 정책을 분석하고 외부 엔티티에 액세스 권한을 부여하는 모든 정책을 감지하여 AWS 리소스의 보안을 개선하는 데 도움이 되는 AWS 서비스입니다. 간단히 말해, 외부 엔티티와 공유되는 조직 내 리소스를 식별하는 데 도움이 됩니다.

Access Analyzer는 수학적 논리 및 추론의 한 형태인 자동화된 추론을 사용하여 정책에서 허용하는 모든 가능한 액세스 경로를 결정함으로써 포괄적이고 정확한 결과를 제공합니다.

주요 기능

 

  1. 공유 리소스 탐지
    액세스 분석기는 계정 외부의 엔티티와 공유되는 Amazon S3 버킷, IAM 역할, AWS 키 관리 서비스(KMS) 키, AWS 람다 함수, Amazon Simple Queue Service(SQS) 대기열과 같은 리소스를 탐지할 수 있습니다.

  2. IAM 정책 분석
    엔터티(사용자, 역할 또는 서비스)가 액세스할 수 있는 리소스 및 작업에 대한 자세한 보고서를 제공하여 정책 권한을 검증하는 데 도움을 줍니다. 

  3. 정책 유효성 검사
    리소스 정책의 공개 및 계정 간 접근성을 검증하고, 의도한 것보다 더 광범위한 액세스를 허용할 수 있는 정책 요소를 식별하고, 액세스를 제한하기 위한 변경을 권장할 수 있습니다. 

  4. 시간 경과에 따른 액세스 분석
    IAM 액세스 분석기는 정책이 변경될 때 지속적으로 권한을 모니터링하고 분석하여 위험을 증가시킬 수 있는 의도하지 않은 변경을 방지할 수 있도록 도와줍니다.

Access Analyzer 결과는 AWS 계정에서 직접 생성되며, AWS 관리 콘솔, AWS CLI 또는 API를 통해 이러한 결과를 볼 수 있습니다. 이러한 결과를 정기적으로 검토하고 필요한 조치를 취하면 AWS 리소스의 보안을 유지하는 데 도움이 될 수 있습니다.

 

아카이브 규칙

 

AWS IAM 액세스 분석기의 보관 규칙은 규칙을 생성할 때 정의한 기준을 충족하는 새로운 발견을 자동으로 보관하는 데 사용됩니다. 이 규칙은 액세스 분석기에서 보고한 보안 결과를 관리하고 우선순위를 지정하는 데 도움이 됩니다.

액세스 분석기가 검색 결과를 생성할 때 검색 결과와 일치하는 기존 아카이브 규칙이 있는지 확인합니다. 일치하는 항목이 발견되면 액세스 분석기는 자동으로 해당 항목을 아카이브합니다. 즉, 해당 검색 결과는 검색 결과 목록에서 계속 사용할 수 있지만 보관된 것으로 표시되며 활성 검색 결과의 총 수에 포함되지 않습니다.

아카이브 규칙은 다음과 같은 경우에 유용할 수 있습니다.

  • 예상된 결과이며 조치가 필요하지 않은 결과가 있는 경우.
  • 보안 분석과 가장 관련성이 높은 결과에 집중하려는 경우.
  • 각 아카이브 규칙에는 이름과 하나 이상의 필터 기준이 포함됩니다. 필터 기준은 규칙과 일치하기 위해 검색 결과가 충족해야 하는 조건을 지정합니다. 필터에는 계정 ID, 리소스 유형, 리소스 지역 및 액세스 유형에 대한 조건이 포함될 수 있습니다.

검토하고 해결해야 할 검색 결과가 자동으로 보관되지 않도록 보관 규칙을 신중하게 구성하는 것이 중요합니다.

아카이브 규칙 기능을 포함한 IAM 액세스 분석기는 AWS 환경의 보안을 강화하는 데 도움이 될 수 있지만, 이는 종합적인 보안 전략의 일부일 뿐이라는 점에 유의하시기 바랍니다. 항상 보안 설정과 관행을 정기적으로 검토하고 다른 AWS 보안 도구와 기능도 활용하는 것이 좋습니다.

 

분석기

 

분석기는 계정에서 설정한 리소스로서 AWS 리소스 정책을 검사합니다. 리소스의 공개 및 교차 계정 액세스에 대한 포괄적인 가시성을 제공합니다.

작동 방식은 다음과 같습니다.

  1. 지역 및 계정 범위
    분석기를 만들 때 분석 영역을 선택할 수 있습니다. 분석기는 전체 AWS 계정 내에서 또는 특정 AWS 리전 내에서 리소스 정책을 분석하도록 설정할 수 있습니다. 범위가 설정되면 분석기는 해당 범위 내에서 지원되는 리소스의 정책을 검토합니다.

  2. 결과
    분석기는 리소스 정책을 지속적으로 모니터링하여 "결과"를 보고합니다. 분석기가 계정 외부 또는 조직 내의 다른 계정에서 AWS 조직에서 액세스할 수 있는 리소스를 식별할 때 결과가 생성됩니다.

  3. 결과 보관 및 해결
    예상된 결과이며 조치가 필요하지 않은 경우 IAM Access Analyzer 결과를 보관할 수 있습니다. 발견의 원인이 된 조건이 해결되면 발견은 자동으로 해결됩니다.

  4. 정책 확인
    또한 분석기는 정책 확인 기능을 제공하여 정책 구문의 유효성을 검사하고 리소스 정책을 배포하기 전에 평가할 수 있습니다. 이를 통해 의도하지 않은 공개 또는 교차 계정 액세스를 방지할 수 있습니다.

AM 액세스 분석기는 AWS 환경의 보안을 유지하고 개선하기 위한 강력한 도구이지만, 다른 보안 도구와 마찬가지로 보안 설정 및 관행을 정기적으로 검토하고 업데이트하는 것을 포함하는 광범위한 보안 전략의 일부로 사용해야 합니다.

 

목차로 이동

 

자격 증명 보고서

 

AWS의 자격 증명 보고서는 AWS 계정의 보안 상태를 감사하고 개선하는 데 도움이 되는 보안 기능입니다. 특히 계정에 어떤 IAM 사용자와 역할이 있는지, 어떤 권한이 있는지 파악하는 데 유용합니다.

자격 증명 보고서에 포함된 내용은 다음과 같습니다.

  1. IAM 사용자 정보
    계정의 각 사용자에 대해 자격 증명 보고서에는 사용자가 생성된 날짜, 비밀번호를 마지막으로 사용한 날짜, AWS 관리 콘솔에 마지막으로 액세스한 날짜, 액세스 키(있는 경우)를 마지막으로 사용한 날짜와 같은 세부 정보가 나열됩니다.

  2. MFA 상태
    다단계 인증(MFA)은 AWS 계정에 추가적인 보호 계층을 추가합니다. 자격 증명 보고서에는 각 사용자에 대해 이 기능이 활성화되어 있는지 여부가 표시됩니다.

  3. 주요 정보 액세스
    이 보고서에는 각 사용자의 액세스 키에 대한 정보도 포함되어 있습니다. 키가 마지막으로 사용된 시기와 키가 사용된 AWS 서비스가 표시됩니다.

  4. 비밀번호 정책 준수
    자격 증명 보고서는 IAM 사용자가 계정 비밀번호 정책을 준수하는지 확인하는 데 도움이 될 수 있습니다. 예를 들어, 최소 글자 수, 대문자 하나 이상 또는 90일마다 교체해야 하는 비밀번호를 사용하도록 설정되어 있는지 확인할 수 있습니다.

자격증명 보고서는 IAM 콘솔에서 CSV 파일로 다운로드할 수 있으며, 몇 시간마다 업데이트됩니다. 최신 보고서가 필요한 경우 수동으로 생성할 수 있습니다. 이러한 보고서를 정기적으로 사용하여 IAM 사용자의 액세스 및 보안 구성을 검토하고 관리하면 AWS 리소스를 안전하게 유지하는 데 큰 도움이 될 수 있습니다.

 

목차로 이동

 

조직 활동

 

AWS ID 및 액세스 관리(IAM)의 "조직 활동"은 통합 청구 및 계정 중앙 집중식 제어를 위해 IAM과 통합되는 AWS 조직 서비스를 의미합니다.

AWS 조직을 사용하면 여러 AWS 계정을 사용자가 생성하고 중앙에서 관리하는 조직으로 통합할 수 있습니다. 이 서비스는 통합 청구를 통해 조직의 모든 AWS 계정에 대해 단일 결제 방법을 설정할 수 있도록 하여 청구를 간소화합니다.

IAM의 경우, AWS Organizations를 사용하면 모든 계정에 대한 액세스, 규정 준수 및 보안을 중앙에서 제어할 수 있습니다. 이를 통해 계정이 회사 전체의 액세스 제어 정책을 준수하도록 할 수 있습니다.

예를 들어, AWS Organizations를 사용하면 다음과 같이 할 수 있습니다.

  1. 여러 AWS 계정의 정책을 중앙에서 관리할 수 있습니다
    SCP(서비스 제어 정책)를 사용하여 계정에 대한 세분화된 권한을 설정할 수 있습니다.

  2. AWS 계정 생성 및 관리 자동화
    새 계정을 쉽게 생성하고 기존 계정을 대규모로 관리할 수 있습니다.

  3. 청구서 통합
    모든 AWS 계정에 대해 하나의 청구서를 받을 수 있습니다.

  4. AWS 서비스에 대한 액세스 제어
    모든 계정이 조직 내에서 유지되고 보안 및 규정 준수 요구 사항을 충족하는지 확인할 수 있습니다.

  5. 구성원 계정을 설정하고 관리하세요
    기존 계정을 조직에 참여하도록 초대하고 조직 내에서 새 계정을 생성할 수 있습니다.

AWS 조직은 AWS 계정을 관리하고 구성하는 방법을 제공하지만, 각 개별 계정 내의 사용자, 역할 및 권한을 관리하는 데는 여전히 IAM 서비스를 사용한다는 점에 유의하세요.

 

목차로 이동

 

SCP(Service Control Policies)


SCP(서비스 제어 정책)는 AWS 조직에서 조직 계정의 권한을 관리하기 위해 사용할 수 있는 정책의 한 유형입니다. SCP는 조직의 모든 계정에 대해 사용 가능한 최대 권한을 중앙에서 제어하여 계정이 조직의 액세스 제어 지침 내에서 유지되도록 도와줍니다.

SCP는 조직을 만드는 데 사용하는 계정인 마스터 계정에서 만들어지고 적용됩니다. SCP는 AWS 서비스 API(예: EC2, S3, DynamoDB 등)의 사용을 화이트리스트 또는 블랙리스트에 추가하는 데 사용됩니다.

IAM 정책은 계정 내의 각 엔티티(사용자 또는 역할)가 허용하거나 거부하는 작업을 결정하는 반면, SCP는 계정에서 특정 AWS 서비스 작업을 수행할 수 있는지 여부를 제어합니다.

다음은 SCP에 대한 몇 가지 중요한 사항입니다:

  1. 기본적으로 거부
    기본적으로 "FullAWSAccess"라는 이름의 SCP는 조직의 모든 계정에 걸쳐 모든 서비스 및 작업에 대한 액세스를 허용합니다. 이 기본 정책을 제거하면 모든 AWS 서비스 작업이 암시적으로 거부됩니다.

  2. 평가 로직
    SCP는 명시적 거부, 암시적 거부, 명시적 허용을 사용합니다. 허용 규칙이 없는 것은 암시적 거부에 해당합니다. 명시적 거부는 항상 모든 허용보다 우선합니다.

  3. 화이트리스트와 블랙리스트
    SCP를 사용하여 서비스 작업을 화이트리스트 또는 블랙리스트에 추가할 수 있습니다. 화이트리스트를 사용하면 허용되는 서비스 및 작업을 지정할 수 있고, 블랙리스트를 사용하면 허용되지 않는 서비스 및 작업을 지정할 수 있습니다.

  4. 계층 구조
    SCP는 루트, OU(조직 구성 단위) 또는 개별 계정 수준에서 첨부할 수 있습니다. 루트에 첨부된 SCP는 모든 OU 및 계정에 적용됩니다. OU 수준에서 SCP를 첨부하면 루트 수준에서 첨부된 모든 SCP를 무시합니다.


SCP는 사용자 또는 역할에 권한을 부여하는 독립형 정책이 아니라 사용자의 권한을 효과적으로 결정하기 위해 IAM 권한 정책과 함께 사용된다는 점을 기억해야 합니다.

 

목차로 이동

반응형