๐Ÿ“‚ AWS

[AWS] IAM

dhyuck 2021. 10. 13. 23:02
๋ฐ˜์‘ํ˜•

IAM

IAM(Identity & Access Management) ๋Š” AWS ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. IAM์€ ์‚ฌ์šฉ์ž ๋ฐ ๊ทธ๋ฃน์„ ๋งŒ๋“ค๊ณ  ๊ด€๋ฆฌํ•˜๋ฉฐ ๊ถŒํ•œ์„ ํ†ตํ•ด ์•ก์„ธ์Šค๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.


IAM Identities (users, user groups, and roles)

  • IAM User(์‚ฌ์šฉ์ž)
    • User๋Š” AWS ์„œ๋น„์Šค์— ์•ก์„ธ์Šค๊ฐ€ ํ•„์š”ํ•œ ๊ฐœ์ธ ๋˜๋Š” ์‹œ์Šคํ…œ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • AWS ์„œ๋น„์Šค ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ธ์‹ํ•˜๋Š” ๊ณ ์œ ํ•œ ID์ž…๋‹ˆ๋‹ค. (Linux, Windows์˜ ๊ณ„์ •๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.)
    • User๋Š” ์ด๋ฆ„(name)๊ณผ ์ž๊ฒฉ์ฆ๋ช…(credentials)์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
    • ๊ด€๋ฆฌ์ž ๊ถŒํ•œ(administrator permissions)์ด ์žˆ๋Š” IAM User์™€ AWS account root User๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
    • IAM User๋Š” 1๊ฐœ์˜ AWS ๊ณ„์ •๊ณผ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.
    • ๊ธฐ๋ณธ์ ์œผ๋กœ ์ƒˆ๋กœ์šด IAM ์‚ฌ์šฉ์ž๋Š” ์•„๋ฌด ๊ถŒํ•œ์ด ์—†์Šต๋‹ˆ๋‹ค.
    • ๊ด€๋ฆฌ ๊ถŒํ•œ(administrative permissions)์„ ํ• ๋‹น ๋ฐ›์€ ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ IAM ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑ ๋ฐ ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • IAM User Group(๊ทธ๋ฃน)
    • ๊ทธ๋ฃน์€ User๋“ค์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. User๊ฐ€ Group์— ์ถ”๊ฐ€๋˜๋ฉด User๋Š” Group์˜ ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
    • ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์„ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • IAM Role(์—ญํ• )
    • IAM Role ํŠน์ •ํ•œ ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ์‚ฌ์šฉ์ž์™€ ๊ทธ๋ฃน์— ํ• ๋‹น ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋งก์„ ์ˆ˜ ์žˆ๋Š” Role์˜ ์ˆ˜์—๋Š” ์ œํ•œ์ด ์—†์ง€๋งŒ, AWS ์„œ๋น„์Šค์— ์š”์ฒญํ•  ๋•Œ ํ•˜๋‚˜์˜ IAM Role(์—ญํ• )๋งŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • AWS service role๋Š” ์„œ๋น„์Šค๊ฐ€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋งก๋Š” ์—ญํ• ์ž…๋‹ˆ๋‹ค.
    • ์ผ๋ถ€ AWS ์„œ๋น„์Šค ํ™˜๊ฒฝ์„ ์„ค์ •ํ•  ๋•Œ, ์„œ๋น„์Šค๊ฐ€ ๋งก์„ ์—ญํ• ์„ ์ •์˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ service role์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. service role์€ AWS ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ๋ชจ๋“  ๊ถŒํ•œ์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‚˜๋‹ค.
    • Permissions boundary(๊ถŒํ•œ ๊ฒฝ๊ณ„)๋Š” identity-based policy(์ž๊ฒฉ ์ฆ๋ช… ๊ธฐ๋ฐ˜ ์ •์ฑ…)์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ตœ๋Œ€ ๊ถŒํ•œ์„ ์ œํ•œํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
    • Principal์€ AWS์—์„œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•˜๋Š” entity์ž…๋‹ˆ๋‹ค.
    • Principal์€ AWS account root user(๊ณ„์ • ๋ฃจํŠธ ์‚ฌ์šฉ์ž) ๋˜๋Š” IAM ์‚ฌ์šฉ์ž ๋˜๋Š” role(์—ญํ• )์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Policy(์ •์ฑ…)
    • Policy๋Š” ๊ถŒํ•œ์„ ์ •์˜ํ•˜๋Š” ๊ฐ์ฒด(Object)๋กœ identities(user, group, role) ๋˜๋Š” resource ์—ฐ๊ฒฐํ•˜์—ฌ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค
    • ๋Œ€๋ถ€๋ถ„์˜ ์ •์ฑ…์€ JSON์œผ๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
    • Policy types์—๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ Identity-based policies์™€ Resource-based policies์ด ์žˆ์Šต๋‹ˆ๋‹ค.
    • Identity-based policies๋Š” user, group, role์ด ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…, ๋ฆฌ์†Œ์Šค ๋ฐ ์กฐ๊ฑด์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.
    • Resource-based policies๋Š” S3, SNS, SQS์™€ ๊ฐ™์€ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๊ณ  ์ ์šฉ๋˜๋Š” ์กฐ๊ฑด์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
    • JSON policy document structure
      • Version : ๋ฒ„์ „ ์ •์˜, ๊ฐ€์žฅ ์ตœ์‹  ๋ฒ„์ „์€ 2012-10-17
      • Statement : ์ •์ฑ…์— 2๊ฐœ ์ด์ƒ์˜ ๋ช…๋ น๋ฌธ์„ ํฌํ•จํ• ๋•Œ ์‚ฌ์šฉ
      • Sid : ๋ช…๋ น์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ์„ ํƒ์  ID
      • Effect : ์ ‘๊ทผ ํ—ˆ์šฉ(Allow) ๋˜๋Š” ์ ‘๊ทผ ๊ฑฐ๋ถ€(Deny)
      • Principal : ๋ˆ„๊ฐ€ ์–ด๋–ค ๊ฒƒ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋ถ€๋ฅผ ์ •์˜
      • Action : ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ๊ฑฐ๋ถ€ํ•  ์ž‘์—… ๋ชฉ๋ก
      • Resource : ์ •์ฑ…์ด ์ ์šฉ๋˜๋Š” ๋ฆฌ์†Œ์Šค ์ •์˜, ์™€์ผ๋“œ์นด๋“œ(*)๋Š” ๋ชจ๋“  ๋ฆฌ์†Œ์Šค์— ์ ์šฉ๋จ์„ ์˜๋ฏธ
      • Condition : ์ •์ฑ…์ด ์ ์šฉ๋˜๋Š” ์กฐ๊ฑด

๋ฐ˜์‘ํ˜•

'๐Ÿ“‚ AWS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[AWS] Backup  (0) 2021.10.20
[AWS] RDS  (0) 2021.10.15
[AWS/CLI] describe-route-tables  (0) 2021.10.07
[AWS] Cloud Front  (0) 2021.10.05
[AWS] AWS Cli ์„ค์ •ํ•˜๊ธฐ  (0) 2021.09.03