💡 IAM 및 AWS CLI 💡
📌 IAM (Identity and Access Management)
- IAM은 AWS 리소스에 대한 접근 권한을 관리하는 서비스
- 글로벌 서비스로, 모든 AWS 리전에 걸쳐 작동
- 루트 계정: 루트 계정은 계정을 처음 생성할 때만 사용되어야 하며, 그 이후로는 절대 사용하거나 공유하지 않아야 함
- 대신, IAM 사용자를 생성해서 사용
📌 사용자와 그룹
- IAM에서는 사용자를 생성하고 그룹에 배치할 수 있음
- 그룹에는 사용자만 배치할 수 있음. 다른 그룹을 포함시킬 수 없음
- 여러 사용자를 그룹으로 묶어 관리할 수 있으나 그룹 안에 또 다른 그룹을 포함시킬 수는 없음
- 한 사용자는 여러 그룹에 속할 수 있으며, 그룹에 속하지 않은 사용자도 있을 수 있음
❓) 사용자와 그룹을 생성하는 이유는?
✔️) AWS 계정을 사용하도록 허용하기 위한 권한을 부여하기 위함 !!
📌 정책 (Policy)
- 사용자나 그룹에 권한을 부여하기 위해, 정책(Policy)이라고 불리는 JSON 문서를 지정할 수 있음
- 이 정책 문서는 특정 사용자나 그룹에 속한 사용자들이 어떤 작업에 대해 권한을 가지는지를 명시
- 🌟 AWS 에서는 최소 권한의 원칙을 적용함 🌟
- 사용자가 꼭 필요로 하는 것 이상의 권한을 주지 않는 것 !!
- 필요 시 부족한 권한은 추가하고, 불필요한 권한은 제거하여 보안성 유지
✏️ IAM 사용자 및 그룹 실습
- IAM은 글로벌 서비스로, 리전 선택이 필요하지 않음.
-
리전 선택 활성화 되어있지 않은 것을 확인할 수 있음
- IAM에서 생성한 사용자는 모든 리전에서 사용할 수 있음 🌟
- IAM 계정 생성 후 그룹 생성
- admin 그룹에 AdministratorAccess 정책을 넣어 그룹 생성
AWS 계정에 대한 별칭을 부여할 수 있으며 이 별칭은 고유해야 함.
>> 이 별칭을 통해 로그인 URL을 간소화할 수 있음
루트 사용자보다는 IAM 사용자 사용 권장🌟🌟🌟
📌 IAM 정책
📌 IAM Policies inheritance
- 정책이 그룹의 모든 구성원에게 적용되며 그룹의 구성원 모두 권한을 얻으며 정책의 상속이 가능함.
📌 IAM Policies Structure
AWS에서 자주 보게 될 형식
/* 하나의 정책에 다수의 Statements가 사용된 예 */
{
"Version": "2012-10-17", // “2012–10–17”, “2008–10–17” 값을 가질 수 있다.
"Statement": [
{
"Sid": "FirstStatement", // Statement ID로 statement 를 구분하기 위해서 사용
"Effect": "Allow", // 해당 설정 적용을 Allow / Deny
"Action": [ // 허용할 행위(액션)
"s3:List*",
"s3:Get*"
],
"Resource": [ // Action이 영향을 미치는 리소스 리스트를 지정
"arn:aws:s3:::confidential-data",
"arn:aws:s3:::confidential-data/*"
],
"Condition": {
"Bool": {"aws:MultiFactorAuthPresent": "true"}
} // 조건을 충족되는 경우에만 해당 정책을 적용
}
]
}
- Version : 정책 언어 버전
- Id : 정책 식별 ID
- Statement
[참고]
https://inpa.tistory.com/entry/AWS-📚-IAM-Policy-JSON-구조-ARN-문법-정리
- hyeonbinn 사용자를 그룹에서 삭제시킨다면
-
hyeonbinn은 권한을 잃게 됨. (”IAM:ListUsers에 권한이 없다”)
++ 다른 권한도 추가
- hyeonbinn 사용자한테 3가지의 권한 정책이 첨부됨
반응형
'AWS' 카테고리의 다른 글
AWS Section 6-2. EC2 인스턴스 스토리지 (0) | 2024.09.27 |
---|---|
AWS Section 6-1. EC2 인스턴스 스토리지 (4) | 2024.09.27 |
AWS Section 5. EC2 기초 (0) | 2024.09.27 |
AWS Section 4-2. IAM 및 AWS CLI (0) | 2024.09.27 |
Section 3. (0) | 2024.09.27 |