Aws-cli: U2F 지원

에 λ§Œλ“  2018λ…„ 09μ›” 26일  Β·  45μ½”λ©˜νŠΈ  Β·  좜처: aws/aws-cli

AWS λΈ”λ‘œκ·Έμ— λ”°λ₯΄λ©΄ U2FλŠ” 이제 μ½˜μ†” λ‘œκ·ΈμΈμ— λŒ€ν•΄ μ§€μ›λ©λ‹ˆλ‹€.
https://aws.amazon.com/blogs/security/use-yubikey-security-key-sign-into-aws-management-console/

λ””μŠ€ν¬/λ©”λͺ¨λ¦¬μ— 수λͺ…이 κΈ΄ 토큰을 λ³΄μœ ν•˜λŠ” λŒ€μ‹  νƒ­ν•˜μ—¬ λͺ…령을 μˆ˜ν–‰ν•  수 μžˆλ„λ‘ aws-cliμ—μ„œ 이λ₯Ό μ§€μ›ν•˜λŠ” κ²½λ‘œκ°€ 특히 μ€‘μš”ν•©λ‹ˆλ‹€.

feature-request v2

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이 문제λ₯Ό μ΄ν•΄ν•˜λŠ” ν•œ STS/IAM은 이 문제λ₯Ό μ§„ν–‰ν•˜κΈ° 전에 λ³΄μ•ˆ 킀에 λŒ€ν•œ API 지원을 MFA ν† ν°μœΌλ‘œ μ–»μ–΄μ•Ό β€‹β€‹ν•©λ‹ˆκΉŒ?

λˆ„κ΅¬λ“ μ§€ 이것에 λŒ€ν•΄ 밝힐 수 μžˆμŠ΅λ‹ˆκΉŒ? ν™•μ‹€νžˆ 아직 μ§€μ›λ˜μ§€ μ•ŠλŠ”λ‹€λ©΄ 그것은 λͺ¨ν‰μ΄ 돌면 ...?

νŽΈμ§‘ν•˜λ‹€:

λ³„λ‘œ μœ μš©ν•˜μ§€ μ•Šμ€ 버전을 κ΅¬ν˜„ν–ˆμ§€λ§Œ 아무도 μ‚¬μš©ν•˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— νšŒμ‚¬μ—μ„œ 고객 쀑 λˆ„κ΅¬λ„ κΈ°λŠ₯에 관심이 μ—†λ‹€κ³  κ°€μ •ν•˜λŠ” κΈ°λ°œν•œ 사둀 쀑 ν•˜λ‚˜λ‘œ λ°ν˜€μ§€μ§€ μ•Šλ„λ‘ ν•˜μ‹­μ‹œμ˜€.

Amazon μ½˜μ†”μ— λ‘œκ·ΈμΈν•  λ•Œ μ›Ή UIλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ²˜λ¦¬ν•΄μ•Ό ν•˜λŠ” 계정이 μ—¬λŸ¬ 개 있기 λ•Œλ¬Έμ— λͺ¨λ‘ CLI κΈ°λ°˜μž…λ‹ˆλ‹€. 그리고 λ‚΄κ°€ μ›Ή UIλ₯Ό μ‚¬μš©ν•˜μ—¬ λ‘œκ·ΈμΈμ„ _did_ μ‚¬μš©ν•˜λ”λΌλ„, U2F와 ν•¨κ»˜ μ‚¬μš©ν•  κΈ°μ‘΄ κ³„μ •μ˜ _쀑볡 계정_을 계속 μ‚¬μš©ν•΄μ•Όλ§Œ ν•©λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ μ—¬μ „νžˆ 이전 Google/LastPassλ₯Ό μ‚¬μš©ν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. /λͺ¨λ“  aws-cli λŒ€ν•œ 인증자.

κ·Έλž˜μ„œ... AWS의 U2F 지원은 λ‚΄κ°€ _정말_ μ—΄κ΄‘ν•  _잠재_κ°€ μžˆμ§€λ§Œ, CLI 지원 μ—†μ΄λŠ” 아직 κ±΄λ“œλ¦΄ κ°€μΉ˜κ°€ μ—†μŠ΅λ‹ˆλ‹€. λ‚˜λŠ” λ§Žμ€ μ‚¬λžŒλ“€μ΄ 같은 배에 μžˆλ‹€κ³  μƒμƒν•©λ‹ˆλ‹€.

λͺ¨λ“  45 λŒ“κΈ€

AFAIK, U2FλŠ” 일반적으둜 μ›Ή λΈŒλΌμš°μ €μ—μ„œλ§Œ μž‘λ™ν•©λ‹ˆλ‹€. CLIμ—μ„œ μ–΄λ–»κ²Œ μ‚¬μš©λ  κ²ƒμœΌλ‘œ μ˜ˆμƒν•˜μ‹­λ‹ˆκΉŒ? λΈŒλΌμš°μ €λ₯Ό μ‹€ν–‰ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?

@JensRantil μ•„λ‹ˆμš”, λͺ¨λ“  μ’…λ₯˜μ˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ€ U2F 토큰과 μƒν˜Έ μž‘μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

좜처: μ €λŠ” λ°λΉ„μ•ˆμ—μ„œ libu2f-* 및 pam-u2f λ₯Ό μœ μ§€ν•©λ‹ˆλ‹€ ;)

API μ•‘μ„ΈμŠ€μ—λŠ” 아직 U2Fκ°€ μ§€μ›λ˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

U2F λ³΄μ•ˆ ν‚€λ‘œ MFA 보호 API μ•‘μ„ΈμŠ€λ₯Ό μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

즉, 이 ν”Όλ“œλ°±μ„ μ„œλΉ„μŠ€ νŒ€μ— ν™•μ‹€νžˆ μ „λ‹¬ν–ˆμŠ΅λ‹ˆλ‹€. λ‚΄ κ²½ν—˜μ— λ”°λ₯΄λ©΄ U2FλŠ” λ‹€λ₯Έ 두 번째 μš”μ†Œλ³΄λ‹€ 100000λ°° 더 μœ μš©ν•˜λ―€λ‘œ λ‚΄ μžμ‹ μ˜ μš©λ„λ‘œλ„ 보고 μ‹ΆμŠ΅λ‹ˆλ‹€.

ν•œ 가지 μ£Όμ˜ν•  점은 u2f 토큰과 μƒν˜Έ μž‘μš©ν•˜κΈ° μœ„ν•΄ c 쒅속성을 가져와야 ν•œλ‹€κ³  ν™•μ‹ ν•˜κΈ° λ•Œλ¬Έμ— 이것이 V2 κΈ°λŠ₯이어야 ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.

@JordonPhillips 참고둜 Python U2F 호슀트 λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μžˆμŠ΅λ‹ˆλ‹€. 자체 100% Pythonμ΄μ§€λ§Œ IIRCκ°€ libusb 및 libudev μ‚¬μš©ν•˜λŠ” hidapi 에 μ˜μ‘΄ν•©λ‹ˆλ‹€.
OTOH, 이미 λͺ¨λ“  μ£Όμš” λ°°ν¬νŒμ—μ„œ μ‚¬μš©ν•  수 μžˆμœΌλ―€λ‘œ 큰 λ¬Έμ œκ°€ λ˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ?

λ˜ν•œ (U2F μ‚¬μš©κ³Ό λ§ˆμ°¬κ°€μ§€λ‘œ) μ‚¬μš©μžκ°€ U2F μž₯μΉ˜μ™€ μƒν˜Έ μž‘μš©ν•  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. YubicoλŠ” task-desktop 의 쒅속성인 libu2f-udev (C 라이브러리λ₯Ό κ°€μ Έμ˜€μ§€ μ•Šκ³  μ„€μΉ˜ν•  수 μžˆλ„λ‘)둜 Debian에 μ œκ³΅ν•œ libu2f-host udev κ·œμΉ™ μ—…μŠ€νŠΈλ¦Όμ„ μœ μ§€ κ΄€λ¦¬ν•©λ‹ˆλ‹€. (Debian 10 "buster"λΆ€ν„° μ‹œμž‘) λŒ€λΆ€λΆ„μ˜ μ‚¬μš©μžλŠ” 기본적으둜 μ„€μΉ˜ν•©λ‹ˆλ‹€. 슀트레치(ν˜„μž¬ λ°λΉ„μ•ˆ μ•ˆμ •)μ—μ„œ U2F용 udev κ·œμΉ™μ„ udev νŒ¨ν‚€μ§€λ‘œ μ œκ³΅ν–ˆμœΌλ―€λ‘œ μ—¬κΈ°μ—μ„œλ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μš”μ•½: λ°λΉ„μ•ˆμ€ jessie μ΄ν›„μ˜ U2F μž₯μΉ˜μ— λŒ€ν•œ μ˜¬λ°”λ₯Έ κΆŒν•œμ΄ μžˆμ–΄μ•Ό ν•˜λ©°(1λ…„ 전에 μΆœμ‹œλ¨) λͺ¨λ“  λ°λΉ„μ•ˆ νŒŒμƒλ¬Όλ„ λ§ˆμ°¬κ°€μ§€μ—¬μ•Ό ν•©λ‹ˆλ‹€(U2Fλ₯Ό κΉ¨κΈ° μœ„ν•΄ λ…Έλ ₯ν•˜μ§€ μ•ŠλŠ” ν•œ...)

이것은 μ €μ—κ²Œ 큰 도움이 될 κ²ƒμž…λ‹ˆλ‹€. ν•˜λ£¨μ— 10~20λ²ˆμ”© νœ΄λŒ€ν°μ„ κΊΌλ‚΄ TOTPλ₯Ό λ³΅μ‚¬ν•˜λŠ” 것은 μž¬λ―Έκ°€ μ—†μŠ΅λ‹ˆλ‹€. πŸ˜‚ λŒ€μ‹  Yubikeyλ₯Ό νƒ­ν•  수만 μžˆλ‹€λ©΄ aws-cli κ²½ν—˜μ΄ 훨씬 더 _λ„ˆλ¬΄__ μ¦κ±°μ›Œμ§ˆ κ²ƒμž…λ‹ˆλ‹€.

@nbraud 그듀이 μ‚¬μš©ν•˜λŠ” python μΈν„°νŽ˜μ΄μŠ€λŠ” Linux νœ μ„ μ œκ³΅ν•˜μ§€ μ•ŠλŠ” 것 κ°™μœΌλ―€λ‘œ μ„€μΉ˜ν•˜λ €λ©΄ μ‚¬μš©μžμ—κ²Œ μ»΄νŒŒμΌλŸ¬κ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. 이것은 ν˜„μž¬ cliλ₯Ό μ„€μΉ˜ν•˜κΈ° μœ„ν•œ μš”κ΅¬ 사항이 μ•„λ‹ˆλ―€λ‘œ ν•΄λ‹Ή 라이브러리λ₯Ό μΆ”κ°€ν•˜λŠ” 것은 λ§Žμ€ μ‚¬μš©μžμ—κ²Œ μ£Όμš” λ³€κ²½ 사항이 될 κ²ƒμž…λ‹ˆλ‹€.

@JordonPhillips λΈŒλ ˆμ΄ν‚Ή 체인지 λ„μž…κ³Ό κ΄€λ ¨ν•˜μ—¬... 열성적인 μ‚¬μš©μžκ°€ 덜 λͺ¨ν—˜μ μΈ μ‚¬μš©μžλ₯Ό μœ„ν•΄ 일을 μ€‘λ‹¨ν•˜μ§€ μ•Šκ³  μ΄ˆκΈ°μ— 이점을 얻을 수 μžˆλŠ” λͺ‡ 가지 μ ‘κ·Ό 방식을 상상할 수 μžˆμŠ΅λ‹ˆλ‹€.

  1. v1μ—μ„œ 이λ₯Ό 선택적 μ’…μ†μ„±μœΌλ‘œ λ§Œλ“  λ‹€μŒ μ •λ§λ‘œ 관심이 μžˆλŠ” μ‚¬λžŒλ“€μ€ 이λ₯Ό ν™œμ„±ν™”ν•˜κΈ° μœ„ν•΄ 특수 ν”Œλž˜κ·Έλ‘œ μ»΄νŒŒμΌν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ°©μ‹μœΌλ‘œ 그듀은 기본적으둜 κ²°κ΅­ v2 ν΄λΌμ΄μ–ΈνŠΈμ˜ 일뢀가 될 "미리보기"λ₯Ό μ„ νƒν•©λ‹ˆλ‹€.

  2. U2F 쑰각을 λ³„λ„μ˜ λ°”μ΄λ„ˆλ¦¬λ‘œ λΆ„ν• ν•˜κ³  λŸ°νƒ€μž„μ— 쑴재λ₯Ό κ°μ§€ν•©λ‹ˆλ‹€. 그런 λ‹€μŒ U2F와 ν•¨κ»˜ AWS CLIλ₯Ό μ‚¬μš©ν•˜λ €κ³  ν•˜λŠ” μ‚¬μš©μžλŠ” "이 λ‹€λ₯Έ 도ꡬλ₯Ό μ„€μΉ˜ν•˜μ‹­μ‹œμ˜€"λΌλŠ” λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ Macμ—μ„œλŠ” ν–‰λ³΅μ—μ„œ brew install aws-cli-u2f λ–¨μ–΄μ Έ μžˆμŠ΅λ‹ˆλ‹€. πŸ˜ƒ

λ„€, 이 κΈ°λŠ₯을 μ‚¬μš©ν•˜λ €λ©΄ μ†ŒμŠ€μ—μ„œ 컴파일(compile-from-source) λͺ¨λ“ˆμ„ μ„€μΉ˜ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. 거의 항상 μ»΄νŒŒμΌλŸ¬κ°€ 이미 μžˆλŠ” 개발자 μ»΄ν“¨ν„°μ—μ„œλ§Œ ν•„μš”ν•˜κ³  μ–΄μ¨Œλ“  μ„œλ²„μ—μ„œλŠ” ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

파이썬-U2F 호슀트의 λŒ€μ•ˆμ΄ 될 것 파이썬 fido2 의 USB HID μˆ˜λ‹¨μ˜ C 라이브러리λ₯Ό ν•„μš”μ—μ„œ 당신을 얻을 λ§Œν•˜λŠ” μ„ λ°•μ˜ 바퀴 μ•”ν˜Έν™” 라이브러리λ₯Ό ν•„μš”λ‘œ ...

μ΄μ―€μ—μ„œ μˆ¨μ„ μ°Έκ² μ–΄ πŸ‘

이 문제λ₯Ό μ΄ν•΄ν•˜λŠ” ν•œ STS/IAM은 이 문제λ₯Ό μ§„ν–‰ν•˜κΈ° 전에 λ³΄μ•ˆ 킀에 λŒ€ν•œ API 지원을 MFA ν† ν°μœΌλ‘œ μ–»μ–΄μ•Ό β€‹β€‹ν•©λ‹ˆκΉŒ?

이 문제λ₯Ό μ΄ν•΄ν•˜λŠ” ν•œ STS/IAM은 이 문제λ₯Ό μ§„ν–‰ν•˜κΈ° 전에 λ³΄μ•ˆ 킀에 λŒ€ν•œ API 지원을 MFA ν† ν°μœΌλ‘œ μ–»μ–΄μ•Ό β€‹β€‹ν•©λ‹ˆκΉŒ?

λˆ„κ΅¬λ“ μ§€ 이것에 λŒ€ν•΄ 밝힐 수 μžˆμŠ΅λ‹ˆκΉŒ? ν™•μ‹€νžˆ 아직 μ§€μ›λ˜μ§€ μ•ŠλŠ”λ‹€λ©΄ 그것은 λͺ¨ν‰μ΄ 돌면 ...?

νŽΈμ§‘ν•˜λ‹€:

λ³„λ‘œ μœ μš©ν•˜μ§€ μ•Šμ€ 버전을 κ΅¬ν˜„ν–ˆμ§€λ§Œ 아무도 μ‚¬μš©ν•˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— νšŒμ‚¬μ—μ„œ 고객 쀑 λˆ„κ΅¬λ„ κΈ°λŠ₯에 관심이 μ—†λ‹€κ³  κ°€μ •ν•˜λŠ” κΈ°λ°œν•œ 사둀 쀑 ν•˜λ‚˜λ‘œ λ°ν˜€μ§€μ§€ μ•Šλ„λ‘ ν•˜μ‹­μ‹œμ˜€.

Amazon μ½˜μ†”μ— λ‘œκ·ΈμΈν•  λ•Œ μ›Ή UIλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ²˜λ¦¬ν•΄μ•Ό ν•˜λŠ” 계정이 μ—¬λŸ¬ 개 있기 λ•Œλ¬Έμ— λͺ¨λ‘ CLI κΈ°λ°˜μž…λ‹ˆλ‹€. 그리고 λ‚΄κ°€ μ›Ή UIλ₯Ό μ‚¬μš©ν•˜μ—¬ λ‘œκ·ΈμΈμ„ _did_ μ‚¬μš©ν•˜λ”λΌλ„, U2F와 ν•¨κ»˜ μ‚¬μš©ν•  κΈ°μ‘΄ κ³„μ •μ˜ _쀑볡 계정_을 계속 μ‚¬μš©ν•΄μ•Όλ§Œ ν•©λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ μ—¬μ „νžˆ 이전 Google/LastPassλ₯Ό μ‚¬μš©ν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. /λͺ¨λ“  aws-cli λŒ€ν•œ 인증자.

κ·Έλž˜μ„œ... AWS의 U2F 지원은 λ‚΄κ°€ _정말_ μ—΄κ΄‘ν•  _잠재_κ°€ μžˆμ§€λ§Œ, CLI 지원 μ—†μ΄λŠ” 아직 κ±΄λ“œλ¦΄ κ°€μΉ˜κ°€ μ—†μŠ΅λ‹ˆλ‹€. λ‚˜λŠ” λ§Žμ€ μ‚¬λžŒλ“€μ΄ 같은 배에 μžˆλ‹€κ³  μƒμƒν•©λ‹ˆλ‹€.

@jeffparsons λŠ” CLI/SDK용 U2F MFAκ°€ μ •λ§λ‘œ ν•„μš”ν•˜λ‹€λŠ” 데 μ „μ μœΌλ‘œ λ™μ˜ν•©λ‹ˆλ‹€. λ‚˜λŠ” 그듀이 libusb/python-fido μ ‘κ·Ό 방식을 ν•˜λŠ” 것을 κ±°λΆ€ν•  것이라고 ν™•μ‹ ν•©λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ 그것이 ruby/java ect SDKμ—μ„œ 잘 λ§€ν•‘λ˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. μ›ν„°μΉ˜ μ±Œλ¦°μ§€ 응닡이 μžˆλŠ” U2FλŠ” κ½€ 보편적일 κ²ƒμž…λ‹ˆλ‹€.

btw λ‹€λ₯Έ 계정에 λŒ€ν•œ 역할을 κ°€μ •ν•˜μ—¬ μ›Ή μ½˜μ†”μ—μ„œ 계정을 맀우 μ‰½κ²Œ μ „ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
처럼:
https://signin.aws.amazon.com/switchrole?roleName=SomeAdminRole&account=YourAccountNumberOrAlias
보닀:
https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html

그런 λ‹€μŒ νŽ˜μ΄μ§€ 였λ₯Έμͺ½ μƒλ‹¨μ˜ μ‚¬μš©μž/계정 λ“œλ‘­λ‹€μš΄μ—μ„œ μ—­ν•  μ „ν™˜κΈ°λ₯Ό λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

μ—­μ‹œ 이 녀석은 λ­”κ°€λ₯Ό ν•˜κ³  μžˆμ„μ§€λ„... https://gist.github.com/woowa-hsw0/caa3340e2a7b390dbde81894f73e379d

여기에 μ•„μ£Ό 쒋은 μ†”λ£¨μ…˜μ΄ μžˆμŠ΅λ‹ˆλ‹€. https://github.com/kreuzwerker/awsu

λ™μΌν•œ U2Fλ₯Ό μ‚¬μš©ν•˜λŠ” λ³„λ„μ˜ idp둜 μ—¬λŸ¬ 닀쀑 계정 μ„€μ •μœΌλ‘œ μž‘μ—…ν•˜λŠ” 것은 μ €μ—κ²Œ μ—„μ²­λ‚œ 수고λ₯Ό λœμ–΄μ€„ κ²ƒμž…λ‹ˆλ‹€.
λ˜ν•œ v1μ—μ„œ 미리 보기둜 κ°€μ Έμ˜€κΈ° μœ„ν•΄ μΆ”κ°€ 쒅속성을 μ„€μΉ˜/μ»΄νŒŒμΌν•˜λŠ” 데 λ¬Έμ œκ°€ μ—†μŠ΅λ‹ˆλ‹€.

aws 츑의 λ¬Έμ œμ— λŒ€ν•œ μ›€μ§μž„μ΄ μžˆμŠ΅λ‹ˆκΉŒ?

κ·Έ κ°€μΉ˜λ₯Ό μœ„ν•΄ aws-vaultλŠ” U2F μ§€μ›μ—μ„œ 병합에 μƒλ‹Ήνžˆ κ°€κΉŒμš΄ 것 κ°™μŠ΅λ‹ˆλ‹€: https://github.com/99designs/aws-vault/pull/316

즉, 곡식 AWS CLI 도ꡬ에 κΈ°λ³Έ U2F 지원을 μΆ”κ°€ν•˜λŠ” 것에 μ ˆλŒ€μ μœΌλ‘œ μ°¬μ„±ν•©λ‹ˆλ‹€.

κ·Έλ§Œν•œ κ°€μΉ˜κ°€ 있기 λ•Œλ¬Έμ— aws-vaultλŠ” U2F μ§€μ›μ—μ„œ 병합에 μƒλ‹Ήνžˆ κ°€κΉŒμš΄ 것 κ°™μŠ΅λ‹ˆλ‹€. 99designs/aws-vault#316

μ•„λ‹ˆμš”, 그것은 단지 Yubikeyλ₯Ό μ‚¬μš©ν•˜μ—¬ TOTP 토큰을 μƒμ„±ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. Yubikeyλ₯Ό μ‚¬μš©ν•  수 μžˆλŠ” ν•΄κ²° λ°©λ²•μ΄μ§€λ§Œ U2FλŠ” μ•„λ‹™λ‹ˆλ‹€.

(이것은 awsu κ°€ ν•˜λŠ” 것과 κ°™μŠ΅λ‹ˆλ‹€.)

awscli 의 전체 MFAλŠ” μ„€μ •ν•˜κΈ°κ°€ μ–΄λ ΅κ³  yubikey 지원이 뢀쑱해도 도움이 λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
2019λ…„ MFAλŠ” μ΅œμ²¨λ‹¨ κΈ°λŠ₯이 λ˜μ–΄μ„œλŠ” μ•ˆ λ©λ‹ˆλ‹€.

이에 λŒ€ν•œ 진전이 μžˆμŠ΅λ‹ˆκΉŒ?

방금 이것에 λΆ€λ”ͺμ³€μŠ΅λ‹ˆλ‹€. cliμ—μ„œ μ§€μ›ν•˜μ§€ μ•ŠμœΌλ €λ©΄ μ›Ή μ½˜μ†”μ—μ„œ Yubikey 지원을 μ œκ±°ν•˜μ‹­μ‹œμ˜€. Googleμ—μ„œ 이 ν•­λͺ©μ„ κ²€μƒ‰ν•˜κ³  AWSκ°€ κ΄‘κ³ ν•˜λŠ” λ‚΄μš©μ„ μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 것을 ν™•μΈν•˜λŠ” 것은 μ—„μ²­λ‚œ μ‹œκ°„ λ‚­λΉ„μž…λ‹ˆλ‹€.

이 λ¬Έμ œκ°€ 440일 λ™μ•ˆ μ—΄λ € 있고 아직 ν•΄κ²°λ˜μ§€ μ•Šμ•˜λ‹€λŠ” 것은 κ½€ 우슀꽝슀러운 μΌμž…λ‹ˆλ‹€.

CLI 지원은 μ•žμ„œ μ–ΈκΈ‰ν–ˆλ“―μ΄ 높이 ν‰κ°€λ©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”, https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_users-self-manage-mfa-and-creds.html을 μ‚¬μš©ν•˜μ—¬ λͺ¨λ“  인간 μ‚¬μš©μžμ— λŒ€ν•΄ MFAλ₯Ό μ‹œν–‰ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. 더 λ‚˜μ€ μ†”λ£¨μ…˜) ν•˜μ§€λ§Œ 이제 λ‹€μŒ 쀑 ν•˜λ‚˜λ₯Ό μˆ˜ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€.

) 아이디어λ₯Ό μ™„μ „νžˆ ν¬κΈ°ν•˜κ±°λ‚˜
b) λͺ¨λ“  μ‚¬λžŒμ΄ U2F μ‚¬μš©μ—μ„œ TOTP둜 λ‹€μš΄κ·Έλ ˆμ΄λ“œν•˜λ„λ‘ ν•©λ‹ˆλ‹€.

IAM이 μ—¬λŸ¬ MFA μž₯치λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 사싀도 λ‚˜μœ λ†λ‹΄μž…λ‹ˆλ‹€...

이제 거의 2020λ…„μž…λ‹ˆλ‹€. νŽΈλ¦¬ν•˜κ³  μ•ˆμ „ν•œ (읽기: U2F) MFA μ†”λ£¨μ…˜μ€ μ‚¬μΉ˜ν’ˆμ΄ μ•„λ‹ˆλΌ ν•„μˆ˜ν’ˆμž…λ‹ˆλ‹€. 특히 μ•…μ˜μ μΈ ν–‰μœ„μžκ°€ μ‹¬κ°ν•œ μž¬μ •μ  ν”Όν•΄λ₯Ό μž…νž 수 μžˆλŠ” μ˜μ—­μ—μ„œ.

AWS, 제발, 제발, 제발, ν•¨κ»˜ ν–‰λ™ν•˜κ³  μƒνƒœκ³„(U2F도 μ§€μ›ν•˜μ§€ μ•ŠλŠ” CLI, λͺ¨λ°”일 μ•±, AWS SSO) μ „μ²΄μ—μ„œ MFA 지원을 κ°•ν™”ν•˜κΈ° μœ„ν•΄ λ…Έλ ₯ν•˜μ‹­μ‹œμ˜€!

IAM이 μ—¬λŸ¬ MFA μž₯치λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 사싀도 λ‚˜μœ λ†λ‹΄μž…λ‹ˆλ‹€...

정말 λΆ€λ„λŸ½μŠ΅λ‹ˆλ‹€. ν•˜λ‚˜μ˜ μž₯치만 λ“±λ‘ν•˜λŠ” 것은 정말 λ‚˜μœ μŠ΅κ΄€μ΄λ―€λ‘œ Amazon에 μ™€μ„œ 이 문제λ₯Ό μ΅œλŒ€ν•œ 빨리 μˆ˜μ •ν•˜μ‹­μ‹œμ˜€!

이 λ¬Έμ œκ°€ 440일 λ™μ•ˆ μ—΄λ € 있고 아직 ν•΄κ²°λ˜μ§€ μ•Šμ•˜λ‹€λŠ” 것은 κ½€ 우슀꽝슀러운 μΌμž…λ‹ˆλ‹€.

그것보닀 더 λ‚˜μ˜λ‹€. 2013년에 Amazon의 λˆ„κ΅°κ°€λŠ” λ‹€μŒκ³Ό 같이 μΌμŠ΅λ‹ˆλ‹€.

λΆˆν–‰νžˆλ„ ν˜„μž¬λ‘œμ„œλŠ” 계정당 ν•˜λ‚˜μ˜ MFA만 κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.
κ·ΈλŸ¬λ‚˜ λ‚˜λŠ” 이것을 ν–₯ν›„ κ°œλ°œμ„ μœ„ν•œ κΈ°λŠ₯으둜 κ³ λ €ν•˜κΈ° μœ„ν•΄ 개발 νŒ€κ³Ό ν•¨κ»˜ μ œκΈ°ν–ˆμŠ΅λ‹ˆλ‹€.
https://forums.aws.amazon.com/thread.jspa?threadID=137055

νŒ€μ΄ 바쁠 μˆ˜λ„ 있고 그렇지 μ•Šμ„ μˆ˜λ„ μžˆλ‹€λŠ” 것은 μ΄ν•΄ν•˜μ§€λ§Œ, 아무도 이 λ¬Έμ œμ— λŒ€ν•΄ λ‹΅μž₯을 ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 사싀이 μ €λ₯Ό κ±±μ •ν•˜κ²Œ ν•©λ‹ˆλ‹€. 이것은 λ³€λͺ…ν•  수 μžˆλŠ” 인λ ₯ λΆ€μ‘±, μ €μž„κΈˆ μ˜€ν”ˆ μ†ŒμŠ€ ν”„λ‘œμ νŠΈκ°€ μ•„λ‹ˆλΌ AWS μžμ²΄μž…λ‹ˆλ‹€.

491일, 500에 μƒ΄νŽ˜μΈμ„ μ—΄μž! :μƒ΄νŽ˜μΈ: :confetti_ball:

λ‚˜λŠ” Amazon이 $κ°€ μžˆλŠ” GOV ν”„λ‘œμ νŠΈμ— μ •λ§λ‘œ μ§‘μ€‘ν•˜κ³  μžˆλ‹€κ³  κ°€μ •ν•©λ‹ˆλ‹€. 이 μŠ€λ ˆλ“œλŠ” λ‚΄κ°€ 일반적으둜 λˆ„κ΅¬μ—κ²Œλ„ AWS μ‚¬μš©μ„ ꢌμž₯ν•˜μ§€ μ•ŠλŠ” 이유 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.
λ¬Όλ‘  μ΅œμ²¨λ‹¨μ΄λ˜ μ‹œμ ˆλ„ μžˆμ—ˆμ§€λ§Œ μš”μ¦˜μ€.. 기본적인 κΈ°λŠ₯이 λΆ€μ‘±ν•©λ‹ˆλ‹€. μ£Όμ œμ—μ„œ λ²—μ–΄λ‚¬μ§€λ§Œ λ‹€λ₯Έ μ˜ˆλŠ” Route 53이 μ—¬μ „νžˆ DNSSECλ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” κ²ƒμ΄λ―€λ‘œ μ—¬κΈ°μ—μ„œ μ‹œμž‘ν•˜κ² μŠ΅λ‹ˆλ‹€. μ•„, 그리고 AWS κ΅¬ν˜„μ— "λ©€ν‹°"κ°€ μ—†κΈ° λ•Œλ¬Έμ— MFAλ₯Ό SFA라고 λΆˆλŸ¬μ•Ό ν•©λ‹ˆλ‹€.

폭언을 ν•΄μ„œ λ―Έμ•ˆν•˜μ§€λ§Œ μ‹€μ œλ‘œ 이 κΈ°λŠ₯을 μ›ν•˜λŠ” λ³΄μ•ˆ λ‹΄λ‹Ήμžλ₯Ό μ œμ™Έν•˜κ³ λŠ” 아무도 이 μŠ€λ ˆλ“œλ₯Ό 보지 μ•Šμ„ κ²ƒμž…λ‹ˆλ‹€.
500λͺ… λ‹¬μ„±κΉŒμ§€ λ©°μΉ  μ•ˆ λ‚¨μ•˜μŠ΅λ‹ˆλ‹€ :) !

이 μΆ”κ°€λ˜μ—ˆμœΌλ©΄ 정말 μ’‹κ² μŠ΅λ‹ˆλ‹€. λ‚˜λŠ” νœ΄λŒ€ν°μ΄ 맀우 μ‚°λ§Œν•˜λ‹€λŠ” 것을 μ•Œκ³  AWS μ„œλΉ„μŠ€μ™€ μƒν˜Έ μž‘μš©ν•  λ•Œ μ‹œκ°„λ‹Ή μ—¬λŸ¬ 번 νœ΄λŒ€ν°μ„ κΊΌλ‚΄κ³  싢지 μ•ŠμŠ΅λ‹ˆλ‹€.

이것은 λ©°μΉ  전에 μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€ - https://aws.amazon.com/premiumsupport/knowledge-center/authenticate-mfa-cli/

그게 λˆ„κ΅°κ°€μ—κ²Œ 도움이 λ˜λ‚˜μš”?

그게 λˆ„κ΅°κ°€μ—κ²Œ 도움이 λ˜λ‚˜μš”?

μŠ¬ν”„κ²Œλ„, μ•„λ‹™λ‹ˆλ‹€. IMHOλŠ” AWSκ°€ 토큰 μ½”λ“œλ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄ λ³΅μž‘ν•œ μŠ€ν¬λ¦½νŠΈκ°€ ν•„μš”ν•˜λ‹€λŠ” 또 λ‹€λ₯Έ λ¬Έμ œμž…λ‹ˆλ‹€. 이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ 타사 aws-mfa python 슀크립트 PyPi λͺ¨λ“ˆμ„ μ‚¬μš©ν•©λ‹ˆλ‹€.
ν•˜μ§€λ§Œ @chris-bateman을 μƒκ°ν•΄μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€!

이것은 λ©°μΉ  전에 μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€ - https://aws.amazon.com/premiumsupport/knowledge-center/authenticate-mfa-cli/

ν•΄λ‹Ή 기사 ν•˜λ‹¨μ— "κ°œμ„ ν•  수 μžˆλŠ” 사항이 μžˆμŠ΅λ‹ˆκΉŒ? μ•Œλ €μ£Όμ‹­μ‹œμ˜€" λ²„νŠΌμ΄ μžˆμŠ΅λ‹ˆλ‹€. 이 λ²„νŠΌμ€ λ°˜λ“œμ‹œ λˆŒλŸ¬μ•Ό ν•©λ‹ˆλ‹€.

제 λͺ«μ„ λ‹€ν–ˆκ³  "μ•Œλ €μ£ΌκΈ° λΆ€λΆ„"에 λŒ“κΈ€μ„ λ‚¨κ²ΌμŠ΅λ‹ˆλ‹€. 이 κΈ°λŠ₯이 κ΅¬ν˜„λœλ‹€λ©΄ 저도 맀우 기쁠 κ²ƒμž…λ‹ˆλ‹€.

@steinybot 을 κ²Œμ‹œ

아직 κ΅¬ν˜„λ˜μ§€ μ•Šμ•˜λ‹€λŠ” μ•ˆνƒ€κΉŒμš΄ λŒ“κΈ€ μΆ”κ°€
why

2κ°œμ›”λ„ 채 μ•ˆλ˜μ–΄ 2주년이 λ‹€κ°€μ˜΅λ‹ˆλ‹€. 이제 κ°€κΉŒμ›Œμ§€κ² μ£ ? 였λ₯Έμͺ½?

쒋은 μ†Œμ‹: aws-vaultλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€λ©΄ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. 그듀은 방금 Yubikey 지원을 λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. TOTPλ₯Ό μ§€μ›ν•˜λŠ” yubikeyκ°€ μžˆλŠ” 경우 내뢀에 MFA μ½”λ“œλ₯Ό μΆ”κ°€ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이상적인 것은 Amazonμ—μ„œ κΈ°λŒ€ν•˜λŠ” κ²ƒμ΄μ§€λ§Œ Jeffκ°€ 더 λΆ€μžκ°€ λ˜λŠ” λ™μ•ˆμ—λŠ” μ•„λ§ˆμ‘΄μ΄ μ‹ κ²½ 쓰지 μ•ŠλŠ”λ‹€λŠ” 데 λͺ¨λ‘ λ™μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ—­ν•  등에 λŒ€ν•œ ν›Œλ₯­ν•œ 지원이 μžˆμŠ΅λ‹ˆλ‹€. 제 μΌλΆ€λŠ” 이것이 제3자 λ„κ΅¬λΌλŠ” 것이 μŠ¬ν”„μ§€λ§Œ μ˜€ν”ˆ μ†ŒμŠ€λ₯Ό μ’‹μ•„ν•˜λŠ” μ΄μœ λŠ” λ°”λ‘œ 여기에 μžˆμŠ΅λ‹ˆλ‹€. μ˜΅μ…˜μ΄ μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.
링크: https://github.com/99designs/aws-vault/blob/master/USAGE.md#using -a-yubikey

aws-vaultλŠ” ν›Œλ₯­ν•˜μ§€λ§Œ U2Fκ°€ μ•„λ‹Œ TOTPλ₯Ό μ§€μ›ν•©λ‹ˆλ‹€.

이것을 μ˜€λž«λ™μ•ˆ κΈ°λ‹€λ¦° 후에 λ‚˜λŠ” 이제 https://github.com/kreuzwerker/awsuλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

@nbraud 그듀이 μ‚¬μš©ν•˜λŠ” python μΈν„°νŽ˜μ΄μŠ€λŠ” Linux νœ μ„ μ œκ³΅ν•˜μ§€ μ•ŠλŠ” 것 κ°™μœΌλ―€λ‘œ μ„€μΉ˜ν•˜λ €λ©΄ μ‚¬μš©μžμ—κ²Œ μ»΄νŒŒμΌλŸ¬κ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. 이것은 ν˜„μž¬ cliλ₯Ό μ„€μΉ˜ν•˜κΈ° μœ„ν•œ μš”κ΅¬ 사항이 μ•„λ‹ˆλ―€λ‘œ ν•΄λ‹Ή 라이브러리λ₯Ό μΆ”κ°€ν•˜λŠ” 것은 λ§Žμ€ μ‚¬μš©μžμ—κ²Œ μ£Όμš” λ³€κ²½ 사항이 될 κ²ƒμž…λ‹ˆλ‹€.

@jeffparsons κ°€ 더 λ§Žμ€ 쒅속성을 가진 λ‹€λ₯Έ 더 큰 라이브러리 쀑 ν•˜λ‚˜λ₯Ό μ‚¬μš©ν•˜λŠ” 경우 λͺ‡ 가지 합리적인 잠재적 ν•΄κ²° 방법을 μ§€μ ν–ˆμ§€λ§Œ, κ³ λ €ν•΄μ•Ό ν•  더 μž‘μ€ Python 라이브러리인 pyu2f도 μžˆμŒμ„ μ§€μ ν•˜κ² μŠ΅λ‹ˆλ‹€ . λ˜ν•œ U2F 킀와 ν†΅μ‹ ν•˜κΈ° μœ„ν•΄ κΈ°λ³Έ USB HID λΌμ΄λΈŒλŸ¬λ¦¬μ— μ˜μ‘΄ν•˜μ§€λ§Œ ν•˜λ‚˜μ˜ Python 쒅속성: six μžˆμŠ΅λ‹ˆλ‹€. MacOS, Linux 및 Windows와 ν˜Έν™˜λ˜λŠ” OS HID ν˜ΈμΆœμ— λŒ€ν•œ 자체 ctypes 기반 바인딩을 포μž₯ν•˜κ³  "μΆ©λΆ„ν•œ" μ‚¬μš© 사둀λ₯Ό λ‹€λ£° κ²ƒμž…λ‹ˆλ‹€.

아직 μž‘μ—… 쀑인 μ‚¬λžŒμ΄ μžˆμŠ΅λ‹ˆκΉŒ? aws-cli νŒ€μ€ 이 κΈ°λŠ₯의 ν”„λ‘œν† νƒ€μž…μ— λŒ€ν•œ 패치λ₯Ό μˆ˜λ½ν•©λ‹ˆκΉŒ?

νŽΈμ§‘: IAM μ‚¬μš©μž κ°€μ΄λ“œ μ—μ„œ μžμ„Ένžˆ 읽은 ν›„ U2Fκ°€ API μˆ˜μ€€μ—μ„œ μ§€μ›λ˜μ§€ μ•ŠλŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄λ―€λ‘œ aws-cli λŒ€ν™”ν˜• U2F 토큰 인증을 μ§€μ›ν•˜λ”λΌλ„ GetSessionToken 및 AssumeRole 처럼 보이지 μ•ŠμŠ΅λ‹ˆλ‹€

API μž‘μ—…μ— λŒ€ν•œ MFA 보호의 λ‹€μŒ 츑면을 μ΄ν•΄ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.

  • MFA λ³΄ν˜ΈλŠ” AssumeRole λ˜λŠ” GetSessionToken으둜 가져와야 ν•˜λŠ” μž„μ‹œ λ³΄μ•ˆ 자격 증λͺ…을 ν†΅ν•΄μ„œλ§Œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • U2F λ³΄μ•ˆ ν‚€λ‘œ MFA 보호 API μ•‘μ„ΈμŠ€λ₯Ό μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

λ˜ν•œ @kiwimato 의 μ†Œμ…œ 논평에

이상적인 것은 Amazonμ—μ„œ κΈ°λŒ€ν•˜λŠ” κ²ƒμ΄μ§€λ§Œ Jeffκ°€ 더 λΆ€μžκ°€ λ˜λŠ” λ™μ•ˆμ—λŠ” μ•„λ§ˆμ‘΄μ΄ μ‹ κ²½ 쓰지 μ•ŠλŠ”λ‹€λŠ” 데 λͺ¨λ‘ λ™μ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

이것은 자본주의 ν† λ‘  포럼이 μ•„λ‹ˆλΌ μ†Œν”„νŠΈμ›¨μ–΄ 개발 μŠ€λ ˆλ“œλΌλŠ” 것을 μ•Œμ•„λ‘μ‹­μ‹œμ˜€. AWS νŒ€μ€ λ‚΄ κ²½ν—˜μƒ botocore λ₯Ό μˆ˜μ •ν•˜λŠ” 데 맀우 λ°˜μ‘μ΄ μ’‹μ•˜λ˜ μ§„μ •ν•œ μΈκ°„μœΌλ‘œ κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. λ¬Έμ œκ°€ μžˆλŠ” 경우 λŒ€λΆ€λΆ„μ˜ μ˜€ν”ˆ μ†ŒμŠ€ νŠΉμ„±μ΄ 문제 해결에 κΈ°μ—¬ν•˜κ±°λ‚˜ μ΅œμ†Œν•œ λͺ‡ 가지 μ˜΅μ…˜μ„ λΈŒλ ˆμΈμŠ€ν† λ°ν•˜λŠ” 데 도움이 될 수 μžˆμŒμ„ μΈμ‹ν•˜μ‹­μ‹œμ˜€.

κ·ΈλŸ¬λ‚˜ κΈ°λ³Έ AWS API μžμ²΄λŠ” MFA용 TOTP μ΄μ™Έμ˜ 것을 μ§€μ›ν•˜μ§€ μ•ŠλŠ” κ²ƒμœΌλ‘œ λ³΄μ΄μ§€λ§Œ 이 λ¬Έμ œλŠ” λ‹¨μˆœνžˆ ν΄λΌμ΄μ–ΈνŠΈ κΈ°λŠ₯을 μ§€μ›ν•˜μ§€ μ•ŠλŠ” aws-cli 보닀 더 큰 문제일 수 μžˆμŠ΅λ‹ˆλ‹€. APIκ°€ U2Fλ₯Ό μ§€μ›ν•˜λ©΄ AWSκ°€ 이 티켓을 λΆ€ν’€λ € ν΄λΌμ΄μ–ΈνŠΈ 지원을 받을 수 있기λ₯Ό λ°”λžλ‹ˆλ‹€.

적어도 이와 같은 μ†”λ£¨μ…˜μ€ 기기와 νœ΄λŒ€μ „ν™” κ°„μ˜ μ»¨ν…μŠ€νŠΈ μ „ν™˜μ— 도움이 될 κ²ƒμž…λ‹ˆλ‹€.
https://auth.com/

이것에 λŒ€ν•œ ETAκ°€ μžˆμŠ΅λ‹ˆκΉŒ? AWS cli μ‚¬μš©μ„ μœ„ν•΄ 쒋은 MFA 사둀λ₯Ό μ‚¬μš©ν•˜λŠ” μ‚¬λžŒμ΄ μ „ μ„Έκ³„μ μœΌλ‘œ 아무도 μ—†λ‹€λŠ” 사싀은 맀우 μš°λ €μŠ€λŸ½μŠ΅λ‹ˆλ‹€.

AWS cli μ‚¬μš©μ„ μœ„ν•΄ 쒋은 MFA 사둀λ₯Ό μ‚¬μš©ν•˜λŠ” μ‚¬λžŒμ΄ μ „ μ„Έκ³„μ μœΌλ‘œ 아무도 μ—†λ‹€λŠ” 사싀은 맀우 μš°λ €μŠ€λŸ½μŠ΅λ‹ˆλ‹€.

@james-calahan 그건 사싀이 μ•„λ‹™λ‹ˆλ‹€. MFA둜 인증된 μ—­ν• λ§Œ 역할에 λŒ€ν•œ μ•‘μ„ΈμŠ€λ₯Ό μ œν•œν•©λ‹ˆλ‹€. 예:

AssumeRolePolicyDocument:
  Version: '2012-10-17'
  Statement:
    - Effect: Allow
      Principal:
        AWS: !Sub
          - arn:aws:iam::${Account}:root
      Action:
        - sts:AssumeRole
      Condition:
        Bool:
          aws:MultiFactorAuthPresent: 'true'

그런 λ‹€μŒ aws-mfa λΌλŠ” 도ꡬλ₯Ό μ‚¬μš©ν•˜μ—¬ STSμ—μ„œ μž„μ‹œ 자격 증λͺ…을 μ–»κ³  AWS 자격 증λͺ… νŒŒμΌμ„ μ—…λ°μ΄νŠΈν•˜λŠ” 것을 κ΄€λ¦¬ν•©λ‹ˆλ‹€. λ™μΌν•œ λͺ©ν‘œλ₯Ό μœ„ν•΄ STSμ™€μ˜ μƒν˜Έ μž‘μš©μ„ κ΄€λ¦¬ν•˜λŠ” λ‹€λ₯Έ 방법이 μžˆμŠ΅λ‹ˆλ‹€.

이 티켓은 특히 U2F에 λŒ€ν•œ 지원을 μΆ”κ°€ν•˜λŠ” 데 쀑점을 λ‘‘λ‹ˆλ‹€.

@james-calahan 그건 사싀이 μ•„λ‹™λ‹ˆλ‹€. MFA둜 인증된 μ—­ν• λ§Œ 역할에 λŒ€ν•œ μ•‘μ„ΈμŠ€λ₯Ό μ œν•œν•©λ‹ˆλ‹€.

이것은 TOTPμ—μ„œλ§Œ μž‘λ™ν•©λ‹ˆλ‹€. TOTP 자격 증λͺ… 등을 ν”Όμ‹±ν•˜κΈ° 쉽기 λ•Œλ¬Έμ— κ³ ν’ˆμ§ˆμ˜ 두 번째 μš”μ†Œλ‘œ κ°„μ£Όλ˜μ–΄μ„œλŠ” μ•ˆλ©λ‹ˆλ‹€.
μ΄λŠ” AWSκ°€ U2F 및 TOTP λ””λ°”μ΄μŠ€λ₯Ό 단일 IAM μ‚¬μš©μžμ—κ²Œ λͺ¨λ‘ λ“±λ‘ν•˜λŠ” 것을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” μ‚¬μ‹€λ‘œ 인해 λ”μš± μ•…ν™”λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ UI μ•‘μ„ΈμŠ€μ— U2Fλ₯Ό μ‚¬μš©ν•˜λ €λŠ” 경우 cliμ—μ„œ MFAλ₯Ό μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

ν•„μš”ν•œ μ‚¬μš©μžλ₯Ό μœ„ν•΄ 두 개의 계정을 λ§Œλ“­λ‹ˆλ‹€.

  1. μ½˜μ†”μš© μ‚¬μš©μžλ‘œ U2Fλ₯Ό ν™œμ„±ν™”ν•˜κ±°λ‚˜ 아무 것도 μ•‘μ„ΈμŠ€ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
  2. μ•‘μ„ΈμŠ€ ν‚€λ₯Ό μΆ”κ°€ν•˜κ³  MFAλ₯Ό ν™œμ„±ν™”ν•˜κ±°λ‚˜ 아무 것도 μ•‘μ„ΈμŠ€ν•  수 μ—†λŠ” cli μ•‘μ„ΈμŠ€μš© μ‚¬μš©μžμž…λ‹ˆλ‹€.

CLI μ•‘μ„ΈμŠ€ μ „μš© κ³„μ •μ—μ„œ TOTPλ₯Ό ν”Όμ‹±ν•˜κΈ°κ°€ 맀우 μ–΄λ ΅μŠ΅λ‹ˆλ‹€.

@craighurley
이것은 ν•΄κ²° 방법 IMO에 λŒ€ν•΄ μ•½κ°„ κ³Όλ„ν•˜κ²Œ λ³΄μž…λ‹ˆλ‹€. μ½˜μ†”μ—μ„œ U2Fλ₯Ό μ‚¬μš©ν•˜λ €λ©΄ AWS 쑰직의 λ³΄μ•ˆ 관리λ₯Ό μœ„ν•΄ 2개의 계정을 μœ μ§€ν•΄μ•Ό ν•©λ‹ˆλ‹€.
U2Fλ₯Ό μ‚¬μš©ν•˜λ €λŠ” μ–΄λ–€ νšŒμ‚¬μ—κ²Œλ„ 합리적인 μ†”λ£¨μ…˜μ΄ μ•„λ‹ˆλΌκ³  μƒκ°ν•©λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰