ลงทะเบียน Multi-Factor Authentication (MFA) หลายๆตัวต่อ 1 IAM User ได้แล้ว

นี่เป็นบทความที่มีเนื้อหาดัดแปลงมาจากบทความภาษาญี่ปุ่นของ Classmethod, Inc. ในหัวข้อ「IAMユーザーやAWSアカウントのルートユーザー に複数の MFA デバイスを割り当てる事ができるようになりました」 หากผู้อ่านสนใจอ่านเนื้อหาต้นฉบับสามารถอ่านได้ที่ลิ้งค์ "บทความต้นฉบับ" ด้านล่าง เนื้อหาในบทความนี้การอัพเดทเนื้อหาบางอย่างเพื่อให้เข้าใจง่ายขึ้นทำให้แตกต่างจากต้นฉบับในบางจุด
2022.11.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

สวัสดีครับ ต้า ครับ
ได้มีข่าวประกาศกันออกมาว่า AWS Identity และ Access Management (IAM User, AWS account root user) ได้ทำการรองรับ Multi-Factor Authentication (MFA) แบบหลายอุปกรณ์แล้ว

วันนี้เราเลยจะมาลองใช้งานกันครับ

สรุปคร่าวๆ

  • เราสามารถแบ่ง AWS Identity และ Access Management (IAM User, AWS account root user) ลงใส่เครื่อง MFA ได้มากสุด 8 เครื่อง
  • ตอนที่ล็อกอินจะใช้ตัว MFA ที่ถูกแบ่งตัวใดตัวนึงในการล็อกอิน

มาลองทำกันเลย

ลองสร้าง IAM User ขึ้มาสักตัวเพื่อใช้ในการทดลองครั้งนี้ โดยให้ทำการไปตั้งค่า MFA ที่หน้าต่าง IAM ใน AWS Management Console ครับ

โดยวิธีการตั้งค่านั้นจะเหมือนกับการตั้งค่า MFA แบบเดิม แต่จะมีจุดที่ต่างไปเดิมที่จำเป็นจะต้องตั้งชื่อให้กับ Vitual MFA โดยชื่อนี้นั้นจำเป็นจะต้องไม่ซ้ำกับชื่อ MFA อื่น ที่อยู่ใน Account เดียวกัน เช่น ชื่อ Vitual MFA ของ User A กับ User B ที่อยู่ใน Account นั้นห้ามซ้ำกันครับ

*ที่เขียนไปด้านบนนี้ ↑ หมายถึงในส่วนของ Vitual MFA เท่านั้น หากเป็น Hardware MFA ยังไม่ได้ทำการตรวจสอบว่าใช้ซ้ำได้รึเปล่า

เมื่อเราทำการตั้งค่า MFA เสร็จแล้ว ถ้าเป็นก่อนอัพเดท เราจะไม่สามารถลงทะเบียน MFA เพิ่มได้อีก แต่จากการอัพเดททำให้เราสามารถเพิ่ม MFA เข้าไปได้แล้วครับ
งั้นลองเพิ่ม Vitual MFA อันที่ 2 เข้าไปกันครับ วิธีทำเหมือนกับที่เพิ่มอันแรกเลย

เมื่อเราทำการลงทะเบียน MFA ตัวที่ 2 เสร็จแล้วก็จะมี MFA ขึ้น 2 บรรทัดตามที่เราบันทึกไว้ครับ

ด้านล่างนี้เป็นหน้าต่างใส่ MFA ของตอนล็อกอินสำหรับ IAM User ที่บันทึก MFA ไว้หลายตัวครับ ตอนแรกผมนึกว่าเราจำเป็นต้องใส่ทุก MFA ที่เราบันทึกไว้ แต่จริงๆแล้วให้ใส่ MFA Code แค่อย่างใดอย่างนึงที่เราบันทึกไว้ก็พอแล้วครับ

โดยครั้งนี้ผมได้บันทึก Vitual MFA ไว้ 2 อัน จะใช้อันไหนก็สามารถล็อกอินได้ตามปกติครับ

ตัวอย่างการใช้

สำหรับ usecase ที่ AWS ได้แนะนำให้ใช้ตาม Blog You can now assign multiple MFA devices in IAM | AWS Security Blog มีอยู่ตามนี้ครับ

  • กรณีที่เราทำ MFA Device อันที่ 1 หาย หรือไม่สามารถใช้ MFA ได้แล้ว เราก็ยังสามารถล็อกอินได้โดยใช้ MFA Device อันที่ 2 โดยที่ไม่ต้องทำตามขั้นตอนแบบนี้ >>>Access an AWS account if the administrator left the company
  • ต่อให้เป็นทีมที่อยู่ห่างกันก็สามารถแบ่ง MFA Device ให้ ทำให้สามารถล็อกอินได้ (*น่าจะหมายถึงเคสที่จำเป็นต้องแบ่ง Root User หรือ User ให้กับจำนวนหลายๆคน)

หรือจะใช้สำหรับในกรณีที่ คนที่ทำการควบคุมดูแล Account ทำการลาออกทำให้ไม่สามารถเข้าใช้ Root User ได้ แต่ถ้าเราใช้วิธีในการบันทึกหลายๆ MFA ก็จะสามารถแก้ไขปัญหานี้ได้เหมือนกันครับ
แต่ในทางเดียวกัน การที่เพิ่ม MFA หลายๆตัวเข้าไปนั่นก็หมายถึงการเพิ่มโอกาสนในการเข้าถึงมากขึ้นเช่นเดียวกันครับ กรุณาคิดก่อนทุกครั้งสำหรับการใช้ฟังก์ชันนี้กันครับ

เกี่ยวกับ Log ของ CloudTrail

หลังจากการอัพเดทครั้งนี้ เมื่อเราทำการล็อกอิน ก็จะมี event ในหมวด "MFAIdentifier" เหลืออยู่ใน CloudTrail ครับ โดยนี่จะทำให้เราสามารถตรวจสอบได้ว่าเราทำการล็อกอินโดยใช้ MFA หรือไม่ แล้วใช้ MFA ตัวไหนได้แล้วนั่นเองครับ

ตัวอย่าง evnt ใน CloudTrail

    "additionalEventData": {
        "LoginTo": "https://console.aws.amazon.com/console/home?*************",
        "MobileVersion": "No",
        "MFAIdentifier": "arn:aws:iam::********:mfa/{ชื่อ mfa ที่ใช้ล็อกอิน}",
        "MFAUsed": "Yes"
    },

สรุป

เราได้คุยกันไปแล้วกับการบันทึก MFA จำนวนมากกว่า 1 ตัวต่อ 1 User ผมคิดว่านี่เป็นฟังก์ชันที่น่าสนใจหวังว่าจะเป็นประโยชน์ต่อผู้ใช้ AWS กันครับ

แล้วเจอกันในบทความต่อไปสวัสดีครับ

บทความต้นฉบับ

IAMユーザーやAWSアカウントのルートユーザー に複数の MFA デバイスを割り当てる事ができるようになりました | DevelopersIO

บทความที่เกี่ยวข้อง