GitHub ยกเลิก authentication ด้วย password

GitHub ยกเลิก authentication ด้วย password

เนื่องจากวันนี้กำลังจะเข้าใช้งาน GitHub ผ่าน terminal เพื่อทำการ clone โปรเจคท์ และเมื่อมีการ clone แล้วทาง GitHub ก็จะ require 2 สิ่งนี้คือ username และ password ใช่ไหมครับ ซึ่งพอหลังจากใส่ username เสร็จสิ้นก็เป็น password ซึ่งพอพิมพ์ใส่ลงไปเสร็จสิ้นตามปกติ พอกด enter แล้วเกิดข้อความ error ดังนี้

“Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.”

ซึ่งนั่นก็หมายความว่าการใช้รหัสผ่านในการ authenticate นั้นทาง GitHub ไม่ซัพพอร์ตตรงส่วนนี้อีกต่อไป และก็ได้เข้าไปตามลิ้งค์ปลายทางที่ GitHub แจ้งไว้ด้านล่าง

“Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.”

GitHub ชัตดาวน์(หยุด) password ในการ authenticate

ซึ่งทาง GitHub เองได้แจ้งอย่างเป็นทางในเดือนกรกฏาคม 2020 หรือปีที่ผ่านมาว่าจะทำการยกเลิก authentication ด้วยรหัสผ่าน (password) และจะให้ไปใช้ Token-based authentication อย่างเช่น personal access token, OAuth, SSH หรือ GitHub App token แทน ซึ่งเหตุผลในการสร้างเลเยอร์ขึ้นมาอีกชั้น ให้เกิดความปลอดภัยต่อระบบมากยิ่งขึ้น ซึ่งทาง GitHub มีการพัฒนาตรงส่วนนี้อยู่ตลอดเวลา

ซึ่งจะเริ่มต้นกำหนดใช้อย่างเป็นทางการในวันที่ 13 สิงหาคม 2564 (ผ่านมาได้ 5 วันแล้วนับจากวันที่เขียนในขณะนี้ วันที่ 18 สิงหาคม)

ฟีเจอร์หรือส่วนไหนที่ได้รับผลกระทบในครั้งนี้ ?

ฟีเจอร์หรือส่วนไหนที่ไม่ได้รับผล ?

ข้อดีของ Token เมื่อเทียบกับ password

คอนฟิก GitHub Authentication และเปิดใช้งาน 2FA (Two Factor Authentication)

  1. ไปที่หน้า profile แล้วเลือก “settings”

  1. เลือก “Account security”

  1. ทำการ enable 2FA โดยคลิก “Enable two-factor authentication”

  1. เลือก “Set up using an app”

โดยขั้นตอนนี้จะมี 2 ตัวเลือกให้เลือกคือ “Set up using an app” และ “Set up using SMS” ซึ่งตัวเลือกที่สองนั้นต้องดูว่าประเทศปลายทางนั้นรองรับวิธีนี้หรือไม่ พอคลิกเข้าไปดู ประเทศไทยของเราไม่รองรับซะงั้น ซึ่งส่วนใหญ่ประเทศอื่นล้วนรองรับกันแทบทั้งสิ้น แต่ไม่เป็นไรใช้วิธีแรกได้เลยครับ

  1. สแกน QR code

ใช้สมาร์ทโฟนของเราสแกน QR code จากนั้นจะปรากฎหมายเลข 6 หลัก แล้วนำไปกรอกในช่องที่กำหนดไว้ แล้วเลือก “Continue”

  1. Recover codes

จะปรากฏ “Recovery codes” ซึ่งให้เราทำการดาวน์โหลดเจ้าตัวนี้เก็บไว้ในที่ไหนสักแห่งที่ปลอดภัยในอุปกรณ์ของเราครับ เผื่อเวลาที่เราเข้าใช้งานหรือไม่สามารถ access ตัว GitHub ได้ ตัว recovery codes นี่แหละช่วยเราได้

เสร็จสิ้น

References:

[github.com] - Token authentication requirements for Git operations

[github.com] - Configuring two-factor authentication