
AWS IAM์ด๋?
AWS IAM์์ IAM์ด๋ Identity and Access Management์ ์ฝ์์ด๋ค. IAM์ AWS ์๋น์ค ๋ฐ ๋ฆฌ์์ค์ ๋ํ ์ ๊ทผ ์ ์ด๋ฅผ ์ค์์์ ๊ด๋ฆฌํ ์ ์๊ฒ ํด์ฃผ๋ ์๋น์ค์ด๋ค. ์ฌ์ฉ์, ๊ทธ๋ฃน, ์ญํ ์ ์์ฑํ๊ณ ๊ถํ์ ํตํด ์ ๊ทผ ๊ถํ์ ์ค์ ํ์ฌ ์ ๊ทผ ๊ถํ์ ์ ์ดํ๋ค.
AWS IAM ์ฃผ์ ๊ตฌ์ฑ์์
- User: Account ์ ๊ทผ์ ์ฌ์ฉํ๋ ์ ์์ ๋ณด (ID/PW)
- Group: ๊ณตํต๋ ํน์ง์ ๊ฐ๋ User๋ฅผ ๋ฌถ๋ ๋จ์
- Role: ๋ฆฌ์์ค์ ๊ถํ์ ํ ๋นํ ๋ ์ฌ์ฉ
- Policy: ํ ์ ์๋ ๊ฒ๊ณผ ์๋ ๊ฒ์ ๋ช ์
IAM User, IAM Group, IAM Role ์ฐจ์ด์
| ๊ตฌ๋ถ | IAM User | IAM Group | IAM Role |
| ๋์ | ๋จ์ผ ์ฌ์ฉ์ | User์ ์งํฉ | ๋ณต์ ์ฌ์ฉ์, ๋ฆฌ์์ค ex) EC2 |
| ๋ชฉ์ | AWS ์ ๊ทผ์ ์ํ ์๊ฒฉ ์ฆ๋ช | ๋์ผํ ์ฑ๊ฒฉ์ ๊ฐ๋ IAM User๋ฅผ Group ๋จ์๋ก ๋ฌถ์ด Group์ ๊ถํ์ ํ ๋นํด ๋์์ ์ ์ฉํ์ฌ ๊ด๋ฆฌ | ์์ ๊ถํ ์์ |
| ๋ณด์ ์ธ์ฆ | ID/PW, Access Key | - | STS Token |
| ์ธ์ฆ๊ธฐ๊ฐ | ์๊ตฌ | - | ์์ |
IAM Role
- ์ผ์ ์๊ฐ ์ดํ ๋ง๋ฃ๋๋ ์์ ์๊ฒฉ์ฆ๋ช
- IAM Role์ ๋ ๊ฐ์ง ๊ถํ ์ ์ฑ
์ ์ ์์ญ
- ์ ๋ขฐ ์ ์ฑ : ๋๊ฐ ์ญํ ์ ๋งก์ ์ ์๋์ง ์ ์
- ๊ถํ ์ ์ฑ : ์ญํ ์ด ์ํํ ์ ์๋ ๊ถํ ์ ์ฑ
IAM Policy
- IAM ์๊ฒฉ ์ฆ๋ช ์ ์ฐ๊ฒฐํด AWS ๋ฆฌ์์ค์ ๋ํ ์ ๊ทผ ๊ถํ ์ ๋ณด๊ฐ ์ ์๋์ด ์๋ ๊ฐ์ฒด
- IAM Policy๋ JSON ํ์ผ ํํ๋ก ๊ตฌ์ฑ
- IAM Policy๋ ์๊ฒฉ ์ฆ๋ช ๊ธฐ๋ฐ ์ ์ฑ (Identity-based Policies)์ ๋ฆฌ์์ค ๊ธฐ๋ฐ ์ ์ฑ (Resource-based Policies)๋ก ๊ตฌ๋ถ
AWS IAM User์ Role ๊ตฌ์ฑ ์ค์ต
IAM User ์์ฑ
AdministratorAccess ๊ถํ์ ํ ๋นํ IAM User๋ก ๋ก๊ทธ์ธ
- AdministratorAccess ๊ถํ์ ํ ๋นํ IAM User๋ก ์์ฑํ๋ค.

- ๊ถํ ์ต์ ฉ์์ ์ง์ ์ ์ฑ ์ฐ๊ฒฐ์ ์ ํํ๊ณ ๊ถํ ์ ์ฑ ์์ Administrator Access ๊ถํ์ ๋ถ์ฌํ๋ค.


- ์ฝ์ ๋ก๊ทธ์ธ URL๋ก ์ ์ํด IAM User๋ก ๋ก๊ทธ์ธํ๋ค.


→ Administrator Access ๊ถํ์ด ์์ผ๋ฏ๋ก ์ธ์คํด์ค๋ฅผ ๊ด๋ฆฌํ ์ ์๋ค.
- ๊ถํ ์ญ์ ํ EC2 ์ฝ์๋ก ๋ค์ ์ ์ํ๋ค.



→ ๊ถํ์ด ๋ถ์ฌ๋์ง ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํจ์ ํ์ธํ ์ ์๋ค.
Access Key์ Secret Key๋ฅผ ์ด์ฉํด์ ์ ์
- ReadOnlyAccess ๊ถํ์ ๋ถ์ฌํ๋ค.

- ์ก์ธ์ค ํค๋ฅผ ๋ง๋ ๋ค.

- configure๋ก User์ ๋ํ ์ ๋ณด๋ฅผ Bastion ์๋ฒ์ ์ ๋ ฅํ๋ค.
$ sudo su -
Last login: Mon Jul 22 03:38:15 UTC 2024 on pts/1
# aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]: ap-northeast-2
Default output format [None]: json
# aws sts get-caller-identity
{
"UserId": "AWS Access Key ID ๊ฐ",
"Account": "339712890055",
"Arn": "arn:aws:iam::339712890055:user/lab-edu-iam-user-01"
}
- ์ ๋ ฅํ ํ 80๋ฒ ํฌํธ๋ฅผ ์ด๊ณ ์ ์ํ๋ค. (Access Key์ Secret Key๋ฅผ ์ด์ฉํด EC2 ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋์ง ํ์ธํ๊ธฐ ์ํ ์์ ์ด๋ค.)
# cd streamlit-project/ # streamlit run main.py --server.port 80 & [1] 58815 # Collecting usage statistics. To deactivate, set browser.gatherUsageStats to False. You can now view your Streamlit app in your browser. Network URL: External URL:

EC2 ์ ๋ณด๋ฅผ ์ฝ์ด์ฌ ์ ์๋ค๋ ์ ์ ํ์ธํ ์ ์๋ค.
IAM role ์์ฑ
- EC2์ ๋ถ์ฌํ ์ ์ญํ ์์ฑํ๋ค.

- Administrator Access ๊ถํ์ ์ค์ ํ๋ค.

- ํด๋น ์ญํ ์ ์์ฑ๋์ด์๋ EC2์ ๋ถ์ฌํ๋ค.

\

- ๋ก๋๋ฐธ๋ฐ์์ dns ์ฃผ์๋ฅผ ํตํด ์ ์ํ์ฌ web-server๋ฅผ ํ์ธํ๋ค.

EC2 ์ ๋ณด๋ฅผ ์ฝ์ด์ฌ ์ ์๋ค๋ ์ ์ ํ์ธํ ์ ์๋ค.
์ค์ต ๋ด์ฉ์ Cloud Wave ๊ต์ก ๋น์ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์์ฑ.
'Cloud > AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [AWS] AWS ECS์ AWS EKS (0) | 2025.10.20 |
|---|---|
| [AWS] Terraform์ผ๋ก AWS ์ธํ๋ผ ๊ด๋ฆฌ ๋ฐ ์๋ํ (0) | 2025.06.30 |
| [AWS] AWS EC2๋? (0) | 2025.05.01 |