A. IAM group
B. IAM role
C. IAM tagD. IAM Access Analyzer
這四個選項都是 AWS IAM (Identity and Access Management) 體系中的重要名詞,但它們的功能屬性完全不同。
簡單分類:
- A (Group) & B (Role):是關於「權限與身分管理」的主體。
- C (Tag):是「屬性/標籤」,用於輔助管理或控制權限 (ABAC)。
- D (Access Analyzer):是「稽核工具」,用來檢查安全性。
以下是詳細比較與使用時機:
1. 快速比較表

2. 詳細解說與使用時機
A. IAM Group (群組)
- 定義:這是一群 IAM Users 的集合。
- 功能:你不能用 Group 去登入 AWS,它只是用來貼 Policy (權限策略) 的。
- 使用時機:當你有 50 個開發人員,你不想一個一個設定權限。你建立一個 "Developers" Group,給予 PowerUserAccess 權限,然後把 50 個人加進去。重點:Group 只能包含 User,不能包含 Role 或其他 Group。
B. IAM Role (角色) —— 考試最常考
- 定義:這是一個沒有密碼、沒有 Access Key 的虛擬身分,它依賴的是 「暫時性安全憑證 (Temporary Security Credentials)」。
- 功能:就像一頂「帽子」,誰戴上它,誰就擁有它的權限。
- 使用時機:AWS 服務:EC2 需要存取 S3,Lambda 需要寫入 DynamoDB (機器對機器)。跨帳號存取:帳號 A 的使用者要管理帳號 B 的資源。身分聯合 (Federation):公司使用 AD (Active Directory) 或 Google 帳號登入 AWS,登入後會對應到一個 Role。
C. IAM Tag (標籤)
- 定義:附加在 IAM 資源(User, Role)上的 Key-Value 標籤(例如:Department = HR, Project = Alpha)。
- 功能:管理與搜尋:快速篩選資源。成本分配:如上一題所述,追蹤成本。ABAC (Attribute-Based Access Control):這是進階考點。傳統做法 (RBAC):針對個別 Role 寫死權限。標籤做法 (ABAC):設定規則「只要使用者的 Tag 是 BlueTeam,就能操作 Tag 是 BlueTeam 的 EC2」。這樣新增人員或機器時不用改 Policy。
D. IAM Access Analyzer (存取分析器)
- 定義:它是一個偵測與稽核服務,不是用來設定權限的。
- 功能:它會掃描你帳戶內的所有資源政策 (Resource-based Policies),找出**「有哪些資源是可以被外部 (External) 存取的」**。
- 使用時機:你想知道你的 S3 Bucket 是不是不小心設成公開了?你想檢查有哪些 IAM Role 可以被其他 AWS 帳號 (非本公司) 扮演?它會產生 "Findings",告訴你潛在的安全風險。
3. 情境題範例 (考試怎麼選?)
- 情境 1:公司來了 10 位新實習生,需要給他們同樣的權限。→→ 選 A. IAM Group。
- 情境 2:你的應用程式跑在 EC2 上,程式碼需要讀取 S3 裡的照片,最安全的方法是什麼?→→ 選 B. IAM Role (綁定給 EC2)。
- 情境 3:你需要實作一套權限系統,讓員工自動獲得與其部門相對應的資源存取權,且不需頻繁修改 Policy。→→ 選 C. IAM Tag (配合 ABAC 策略)。
- 情境 4:資安長 (CISO) 要求一份報告,列出所有允許「外部帳號」存取的 S3 Bucket 和 KMS Key。→→ 選 D. IAM Access Analyzer。
總結
- Group 是為了方便管理「人」。
- Role 是為了讓「機器」或「外部人員」安全辦事。
- Tag 是為了分類與進階權限控制。
- Access Analyzer 是為了檢查有沒有「門戶大開」。

















