> ## Documentation Index
> Fetch the complete documentation index at: https://docs.marketplace.bsggo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 접근권한 관리

> IAM 정책, 역할, 액세스 키, MFA 등 AWS 접근권한 관련 보안 점검 결과를 표시합니다. ISMS-P 2.5 인증 및 권한관리 영역에 해당합니다.

<Frame>
  <img src="https://mintcdn.com/bsgpartners/4D1dSlgJiu1PZ8xI/isms-p-dashboard/images/dashboard-access-control.png?fit=max&auto=format&n=4D1dSlgJiu1PZ8xI&q=85&s=c4cd028a5d1176836a27ea1218c97a64" alt="접근권한 관리 대시보드" width="2575" height="1929" data-path="isms-p-dashboard/images/dashboard-access-control.png" />
</Frame>

IAM은 AWS 보안의 기반입니다. 이 시트에서는 Root 계정 보호, 사용자 인증 강도, 액세스 키 관리 현황을 점검합니다.

***

## KPI 카드 (3개)

3개의 숫자 카드가 표시됩니다.

### Root MFA

Root 계정에 MFA(다중 인증)가 활성화된 비율(%)입니다.

| 값          | 심각도          | 판단                                                   |
| ---------- | ------------ | ---------------------------------------------------- |
| **100**    | -            | 정상. 모든 계정의 Root에 MFA가 설정됨                            |
| **100 미만** | **Critical** | Root 계정은 AWS 최고 권한(과금 변경, 계정 해지, 전체 리소스 삭제)이므로 즉시 조치 |

**조치:** AWS 콘솔 → Root 로그인 → 보안 자격 증명 → MFA 디바이스 할당 → 가상 MFA(Google Authenticator 등) → QR 스캔 → 연속 2개 코드 입력 → 활성화

### IAM User MFA

콘솔 로그인이 가능한 IAM 사용자 중 MFA가 활성화된 비율(%)입니다.

| 값       | 심각도      | 판단                                               |
| ------- | -------- | ------------------------------------------------ |
| 100%    | -        | 양호                                               |
| 80\~99% | High     | MFA 미설정 사용자가 콘솔 로그인 사용자인지, API 전용 서비스 계정인지 구분 필요 |
| 80% 미만  | Critical | 콘솔 사용자 대다수에 MFA 없음. MFA 필수 정책 도입 검토              |

<Info>
  모든 IAM 사용자에게 MFA가 필요한 것은 아닙니다. CI/CD 파이프라인 전용, API 전용 서비스 계정 등 콘솔 접근이 없는 계정은 MFA 대상에서 제외될 수 있습니다. **MFA 미설정 사용자가 실제로 콘솔을 사용하는 사람인지** 확인하는 것이 핵심입니다.
</Info>

### 90일+ 미교체 키

90일 이상 교체되지 않은 IAM 액세스 키의 수입니다.

| 값    | 심각도    | 판단                                |
| ---- | ------ | --------------------------------- |
| 0    | -      | 모든 키가 90일 이내 교체됨                  |
| 1\~5 | Medium | 해당 키 목록에서 교체 대상 vs 예외 대상 분류       |
| 6 이상 | High   | 키 관리 프로세스 전반 점검. 자동 교체 메커니즘 도입 검토 |

**조치:** 새 액세스 키 생성 → 애플리케이션에서 키 교체 → 이전 키 비활성화 → 정상 확인 후 삭제. 장기적으로는 IAM 역할 기반 접근으로 전환하여 장기 키 사용을 최소화합니다.

***

## 계정별 IAM 리스크 (레이더 차트)

방사형(Spider/Radar) 차트로, 등록된 각 계정의 IAM 보안 상태를 6개 축으로 비교합니다. 각 계정은 서로 다른 색상의 선으로 표시되며, **Account Id** 범례로 구분합니다.

6개 축의 의미:

| 축                      | 측정 대상                                   | 바깥쪽일수록              |
| ---------------------- | --------------------------------------- | ------------------- |
| **CrossPublic Access** | S3 등 리소스의 퍼블릭 접근 설정                     | 퍼블릭 노출 리소스가 많음      |
| **IAM Policies**       | 과도한 권한(AdministratorAccess, `*:*` 등) 부여 | 최소 권한 원칙 위반이 많음     |
| **Access Keys**        | 미교체/미사용 액세스 키                           | 관리되지 않는 키가 많음       |
| **Role Account**       | IAM 역할의 신뢰 관계(Trust Policy) 설정          | 외부/교차 계정 접근 리스크가 높음 |
| **Password Policy**    | 비밀번호 정책(길이, 복잡도, 만료 등) 미충족              | 비밀번호 정책이 느슨함        |
| **IAM User/MFA**       | MFA 미설정 사용자, 미사용 사용자                    | 사용자 관리가 미흡함         |

**읽는 법:**

* 이상적인 상태는 **모든 축이 중심에 가까운 작은 도형** (리스크가 적음)
* 특정 축이 바깥으로 크게 튀어나왔다면 해당 영역에 집중 조치 필요
* 여러 계정의 도형을 비교하여 특정 계정에 리스크가 집중되어 있는지 파악

***

## 리소스 유형별 FAIL 분포 (Treemap)

트리맵 차트로, FAIL 항목을 리소스 유형별로 면적 비례로 보여줍니다. **면적이 클수록 해당 유형의 FAIL이 많다**는 뜻입니다.

표시되는 주요 리소스 유형:

| 리소스 유형              | 대표적 FAIL 원인                                    |
| ------------------- | ---------------------------------------------- |
| **IAM Policy**      | AdministratorAccess 직접 부여, 인라인 정책 사용, `*:*` 권한 |
| **IAM Role**        | 서비스 역할의 과도한 신뢰 관계, 미사용 역할                      |
| **S3 Bucket**       | 퍼블릭 접근, Block Public Access 미설정                |
| **CloudFront**      | Origin Access Identity 미사용                     |
| **EventBridge**     | 보안 이벤트 규칙 미설정                                  |
| **Access Analyzer** | IAM Access Analyzer 미활성화                       |

**활용:** 가장 면적이 큰 리소스 유형부터 일괄 점검하면 효율적으로 FAIL을 줄일 수 있습니다. 예를 들어 IAM Policy가 가장 크다면, 과도한 권한을 가진 정책을 일괄 식별하여 최소 권한 원칙에 맞게 수정합니다.

***

## 미준수 점검 상세 테이블

개별 FAIL 항목을 한 줄씩 나열하는 테이블입니다. 각 컬럼의 의미:

| 컬럼          | 설명                                                                                   |
| ----------- | ------------------------------------------------------------------------------------ |
| **심각도**     | Critical(빨강), High(주황), Medium(노랑), Low(파랑). Critical부터 조치                           |
| **점검 항목**   | Prowler 점검 규칙 ID (예: `iam_user_mfa_enabled_console_access`)                          |
| **리소스 ARN** | FAIL이 발생한 구체적 AWS 리소스의 ARN                                                           |
| **계정**      | 해당 리소스가 속한 AWS 계정 ID                                                                 |
| **제목**      | 점검 항목의 설명 (예: "IAM User has MFA enabled for console access")                         |
| **조치방법**    | 권장 조치 내용 (예: "Apply least privilege principle, avoid attaching AdministratorAccess") |

**활용 순서:**

1. **심각도** 컬럼으로 Critical → High 순 정렬
2. 각 항목의 **리소스 ARN**을 확인하여 어떤 리소스인지 파악
3. **조치방법** 컬럼의 안내에 따라 AWS 콘솔에서 조치
4. 조치 후 다음 스캔(매일 02:00 KST)에서 PASS 전환 확인, 또는 `isms-p scan`으로 즉시 확인

***

## 주요 점검 항목 요약

| 점검 항목          | 설명               | 심각도      | FAIL 시 의미        |
| -------------- | ---------------- | -------- | ---------------- |
| Root MFA 활성화   | Root 계정 MFA 여부   | Critical | 단일 인증으로만 보호됨     |
| Root 액세스 키 미존재 | Root 키 존재 여부     | Critical | 유출 시 최고 권한 탈취    |
| IAM User MFA   | 콘솔 사용자 MFA 여부    | High     | 비밀번호만으로 로그인 가능   |
| 관리자 권한 미부여     | `*:*` 권한 미부여     | High     | 최소 권한 원칙 위반      |
| 액세스 키 교체       | 90일 이내 교체 여부     | Medium   | 장기간 무단 접근 가능     |
| 미사용 IAM 사용자    | 90일 이상 미사용 자격 증명 | Medium   | 방치된 계정을 통한 무단 접근 |
| 인라인 정책 미사용     | 인라인 정책 존재 여부     | Medium   | 정책 관리 일관성 저하     |
| IAM 패스워드 정책    | 길이/복잡도/만료/재사용 기준 | Medium   | 취약한 비밀번호 허용      |
