Amazon IAM 개념
AWS Identity and Access Management(IAM)는 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스. IAM을 사용하여 AWS기본 접근, 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어한다.
Security
- Blocking — 특정 자원에 대한 접근 혹은 사용을 제어하는 것
- Encrypting — 공개되는 정보에 대해서 식별 불가능한 정보로 암호화 하는 것
- Hiding — ****정보에 관한 접근을 특정 경로 혹은 명령어로 접근하는 것
- 위로 갈수록 더 안전하고 강력한 형태이고 밑으로 갈수록 느슨하고 루즈한 형태이다.
- 보통 Encrypting과 Hiding은 같이 사용한다.
- AWS IAM의 경우 Blocking의 영역이라고 보면 된다.
IAM 구성 요소
- AWS IAM User — AWS IAM User는 AWS 내에서 생성하는 사용자로 AWS와 상호작용하는 사용자 혹은 어플리케이션을 의미한다.
- AWS IAM Group — AWS IAM Group은 IAM User의 집합이고, Group을 사용함으로써 다수 사용자에 대하여 동일한 권한을 보다 쉽게 관리할 수 있다.
- AWS IAM Role — AWS IAM Role은 특정 권한을 가진 IAM 자격증명입니다. 이 Role을 사용함으로써 특정 사용자 혹은 어플리케이션에 혹은 AWS 서비스에 접근 권한을 위임할 수 있다.
- AWS IAM Policy — AWS의 접근하는 해당 권한을 정의하는 개체로 AWS IAM 리소스들과 연결하여 사용할 수 있다.
IAM Policy structure
{
"Statement":[
{
"Effect":"effect",
"Action":"action",
"Resource":"arn",
"Condition:{
"condition":{
"key":"value"
}
}
}
]
}
- Effect — “Allow” 또는 “Deny”일 수 있다. 기본적으로 IAM 사용자에게는 리소스 및 API 작업을 사용할 권한이 없으므로 모든 요청이 거부된다.
- Action — action은 권한을 부여하거나 거부할 특정 API 작업
- Resource — 작업의 영향을 받는 리소스. Amazon 리소스 이름(ARN)을 사용하거나 명령문이 모든 리소스에 적용됨을 표시하는 와일드카드(*)를 사용한다.
- Condition — 선택 사항으로서 정책이 적용되는 시점을 제어하는 데 사용할 수 있다. 다양한 조건을 넣어 권한을 부여할 수 있다.
- Policy는 두가지 형태가 있는데
- 내가 만든 Policy
- aws가 만들어 놓은 자주 사용되는 Policy
'Terraform > AWS and 테라폼: Infrastructure as' 카테고리의 다른 글
[AWS and 테라폼: Infrastructure as Code] Backend 활용하기 (0) | 2024.01.21 |
---|---|
[AWS and 테라폼: Infrastructure as Code] AWS IAM 실습 (0) | 2024.01.21 |
[AWS and 테라폼: Infrastructure as Code] Amazon S3 실습 (0) | 2024.01.21 |
[AWS and 테라폼: Infrastructure as Code] Amazon S3 소개 (0) | 2024.01.21 |