ข้ามไปยังเนื้อหา
Software

GitHub CLI โทเคนหมดอายุอัตโนมัติเปิดทดลอง ส่วน clone ผ่าน HTTPS อาจต้องล็อกอินชั่วคราว

GitHub CLI โทเคนหมดอายุและต่ออายุเองเปิดแบบสมัครใช้ในรุ่น 2.103.0 เมื่อ 21 ต.ค. 2026 โทเคนที่หลุดใช้ไม่ได้ในไม่กี่ชั่วโมง ส่วน clone ผ่าน HTTPS อาจต้องล็อกอิน

โดย กองบรรณาธิการ THAI DATA อ่าน 4 นาที

แชร์FacebookXLINELinkedIn
หน้าประกาศ GitHub Changelog วันที่ 21 ตุลาคม 2026 หัวข้อ GitHub CLI: Opt in to expiring, auto-refreshing OAuth tokens เรื่อง GitHub CLI โทเคนหมดอายุ
ภาพ: GitHub (ภาพหน้าจอ)

สรุปประเด็นสำคัญ

  • GitHub เปิดตัวเลือก โทเคนหมดอายุที่ต่ออายุอัตโนมัติ ใน GitHub CLI 2.103.0 แบบ public preview เมื่อ 21 ตุลาคม 2026 สั่งเปิดด้วย gh auth login --expiring
  • gh เก็บ access token อายุสั้นคู่กับ refresh token ที่หมุนเปลี่ยน GitHub ระบุว่าโทเคนที่หลุดจะ ใช้ไม่ได้ภายในไม่กี่ชั่วโมง แทนที่จะใช้ได้ไม่มีกำหนด และวางแผนให้เป็น ค่าเริ่มต้น ของการล็อกอินใหม่ในรุ่นต่อไป
  • ใช้ได้บน github.com และ GHE.com ส่วน GitHub Enterprise Server ออกโทเคนแบบนี้ตั้งแต่ GHES 3.23 และ GitHub แนะนำ git 2.46 ขึ้นไปคู่กับ gh auth setup-git
  • สคริปต์ที่เก็บค่า gh auth token ไว้ใช้ภายหลังจะพังเมื่อโทเคนหมดอายุ ส่วนโทเคนที่ส่งผ่าน GH_TOKEN หรือ GITHUB_TOKEN จะไม่ถูกต่ออายุ
  • ตั้งแต่ 19 ตุลาคม 2026 GitHub แจ้งว่าช่วงที่ทราฟฟิกผิดปกติอาจบังคับให้ยืนยันตัวตนชั่วคราวเมื่อ clone หรือ fetch repository สาธารณะผ่าน HTTPS แบบไม่ล็อกอิน มีผลกับทุกแผน

GitHub เปิดตัวเลือกโทเคนที่หมดอายุและต่ออายุเองใน GitHub CLI 2.103.0 แบบ public preview เมื่อวันที่ 21 ตุลาคม 2026 ผู้ที่สมัครใช้จะได้ access token อายุสั้นที่ gh ต่ออายุให้เอง ถ้าโทเคนหลุดจะใช้ไม่ได้ภายในไม่กี่ชั่วโมง เรื่อง GitHub CLI โทเคนหมดอายุนี้มาในสัปดาห์เดียวกับที่ GitHub แจ้งว่าการ clone แบบไม่ล็อกอินผ่าน HTTPS อาจต้องยืนยันตัวตนชั่วคราว

ทั้งสองเรื่องกระทบทีม DevOps โดยตรง เพราะ CI และสคริปต์อัตโนมัติจำนวนมากใช้ทั้งโทเคนของ gh และการ clone repository สาธารณะโดยไม่ยืนยันตัวตน

GitHub CLI โทเคนหมดอายุทำงานอย่างไร

เดิมโทเคนที่ gh เก็บไว้ใช้ได้ไม่มีกำหนด เมื่อเปิดตัวเลือกใหม่ gh จะเก็บ access token อายุสั้นคู่กับ refresh token ที่หมุนเปลี่ยน และต่ออายุ access token อยู่เบื้องหลังเมื่อจำเป็น ผู้ใช้จึงล็อกอินค้างไว้ได้โดยไม่ต้องยืนยันตัวตนซ้ำ ขณะที่โทเคนที่รั่วไหลจะมีอายุใช้งานเพียงไม่กี่ชั่วโมง

หน้า release GitHub CLI 2.103.0 ใน repository cli/cli แสดงหัวข้อ Expiring, auto-refreshing OAuth tokens (preview) คำสั่ง gh auth login --expiring และ gh config set expiring_credentials enabled
หน้า release ของ GitHub CLI 2.103.0 บน GitHub อธิบาย Expiring, auto-refreshing OAuth tokens (preview) พร้อมคำสั่ง gh auth login --expiring ภาพ: GitHub (ภาพหน้าจอ)

สรุปวิธีใช้ GitHub CLI โทเคนหมดอายุตามประกาศและ release notes

เรื่อง รายละเอียดตามประกาศของ GitHub
รุ่นที่ต้องใช้ GitHub CLI 2.103.0 ขึ้นไป
เปิดครั้งเดียว gh auth login --expiring
เปิดกับทุกการล็อกอิน gh config set expiring_credentials enabled
ตรวจสถานะ gh auth status แสดงว่าโทเคนต่ออายุได้หรือไม่และหมดอายุเมื่อไร
ใช้กับ git ผ่าน HTTPS รัน gh auth setup-git และใช้ git 2.46 ขึ้นไป เพื่อไม่ให้ git แคชโทเคนเกินอายุ
เซิร์ฟเวอร์ที่รองรับ github.com, GHE.com และ GitHub Enterprise Server 3.23 ขึ้นไป

ตัวเลือก GitHub CLI โทเคนหมดอายุไม่บังคับและใช้ร่วมกับของเดิมได้ ถ้าไม่เปิด ทุกอย่างทำงานเหมือนเดิม ถ้าเซิร์ฟเวอร์ไม่รองรับ เช่น GitHub Enterprise Server รุ่นก่อน 3.23 gh จะกลับไปใช้โทเคนแบบไม่หมดอายุเอง แต่ GitHub บอกชัดว่าวางแผนให้โทเคนหมดอายุเป็นค่าเริ่มต้นของการล็อกอินใหม่ในรุ่นต่อไป

สิ่งที่อาจพังเมื่อเปิดใช้ GitHub CLI โทเคนหมดอายุ

GitHub เตือนว่าสิ่งที่ดึงโทเคนครั้งเดียวแล้วนำไปใช้ซ้ำภายหลังจะพัง เช่น สคริปต์หรือส่วนขยายที่รัน gh auth token แล้วเก็บผลไว้ หรือคัดลอกโทเคนไปใส่ในเครื่องมืออื่น วิธีที่ถูกคือเรียก gh auth token ใหม่ทุกครั้งที่ต้องใช้ ซึ่งจะต่ออายุให้เมื่อจำเป็น release notes ยังระบุว่าโทเคนที่ส่งผ่านตัวแปร GH_TOKEN หรือ GITHUB_TOKEN จะไม่ถูกต่ออายุ

ทั้ง gh auth status และ gh auth token จะต่ออายุ access token ให้อัตโนมัติเมื่อจำเป็น ส่วน workflow ที่ต้องพึ่งโทเคนอายุยาว GitHub แนะนำให้รอไปก่อนยังไม่ต้องเปิดใช้ GitHub CLI โทเคนหมดอายุ ขณะที่การ push และ pull ผ่าน HTTPS จะทำงานต่อได้ถ้าตั้งให้ gh เป็น credential helper ของ git

Clone ผ่าน HTTPS แบบไม่ล็อกอินอาจถูกขอให้ยืนยันตัวตน

อีกประกาศหนึ่งเมื่อ 19 ตุลาคม 2026 ระบุว่า ในช่วงที่มีทราฟฟิกผิดปกติ GitHub อาจบังคับให้ยืนยันตัวตนชั่วคราวสำหรับการ clone และ fetch repository สาธารณะผ่าน HTTPS บางส่วน เพื่อรักษาเสถียรภาพของ github.com คำสั่งที่โดนจะล้มเหลวพร้อมข้อความว่าต้องยืนยันตัวตน มาตรการนี้ใช้กับ repository บน github.com ทุกแผน

หน้าประกาศ GitHub Changelog หัวข้อ Some Git over HTTPS may temporarily require authentication
ประกาศ Some Git over HTTPS may temporarily require authentication บน GitHub Changelog วันที่ 19 ตุลาคม 2026 ภาพ: GitHub (ภาพหน้าจอ)

GitHub ย้ำว่านี่ไม่ใช่การบังคับยืนยันตัวตนกับ repository สาธารณะทั่วไป และจำกัดวงให้แคบที่สุดจากสัญญาณของทราฟฟิกผิดปกติ แต่ยอมรับว่าการใช้งานปกติอาจโดนบ้าง เพราะบางครั้งมีสัญญาณร่วมกัน สิ่งที่ไม่ได้รับผลกระทบ ได้แก่ Git ผ่าน HTTPS ที่ยืนยันตัวตนแล้ว Git ผ่าน SSH การ push และการใช้เว็บหรือ API ที่ไม่เกี่ยวข้อง

GitHub แนะนำให้ระบบอัตโนมัติยืนยันตัวตนทุกครั้ง GitHub Actions ใช้ GITHUB_TOKEN ที่มีให้อยู่แล้ว ระบบ CI อื่นควรใช้ installation access token ของ GitHub App หรือใช้ personal access token ส่วนงานที่ยืนยันตัวตนไม่ได้ให้ลองใหม่หลังมาตรการยกเลิก

เมื่อมองสองประกาศรวมกัน ทิศทางของ GitHub คือให้การเข้าถึงแบบอัตโนมัติยืนยันตัวตนเสมอ และให้ข้อมูลรับรองมีอายุสั้นลง ทีมที่ยังพึ่งการ clone แบบไม่ล็อกอินหรือโทเคนที่ไม่หมดอายุควรเริ่มปรับตั้งแต่ตอนนี้ ก่อนที่ GitHub CLI โทเคนหมดอายุจะกลายเป็นค่าเริ่มต้นตามแผน

ผลต่อองค์กรไทยและทีมพัฒนาจาก GitHub CLI โทเคนหมดอายุ

  1. นักพัฒนาเปิด GitHub CLI โทเคนหมดอายุบนเครื่องตัวเองได้เลย ด้วย gh auth login --expiring แล้วรัน gh auth setup-git ช่วยลดความเสียหายถ้าเครื่องหรือไฟล์ตั้งค่าหลุด โดยเฉพาะเครื่องที่ติดตั้งเอเจนต์เขียนโค้ดซึ่งอ่านไฟล์ในเครื่องได้
  2. ค้นหาสคริปต์ที่เก็บค่า gh auth token ในเครื่องมือภายใน แล้วเปลี่ยนให้เรียกใหม่ทุกครั้ง ก่อนที่โทเคนหมดอายุจะกลายเป็นค่าเริ่มต้น
  3. องค์กรที่ใช้ GitHub Enterprise Server ในศูนย์ข้อมูลของตัวเอง ควรใส่ GHES 3.23 ในแผนอัปเกรดหากต้องการใช้ GitHub CLI โทเคนหมดอายุ เพราะรุ่นก่อนหน้าจะยังออกโทเคนแบบไม่หมดอายุ
  4. ให้ CI ทุกตัวที่ clone จาก GitHub ยืนยันตัวตน เช่น Jenkins หรือ GitLab runner ในองค์กรที่ดึงโค้ดโอเพนซอร์สจาก GitHub ควรใช้โทเคนของ GitHub App แทนการ clone แบบไม่ล็อกอิน ไม่อย่างนั้น build อาจล้มกะทันหันในช่วงที่ GitHub เปิดมาตรการ
  5. อัปเดต git บนเครื่องนักพัฒนาและ runner เป็นรุ่น 2.46 ขึ้นไปตามคำแนะนำของ GitHub ติดตามข่าวเครื่องมือนักพัฒนาอื่นได้ที่หมวดการพัฒนาซอฟต์แวร์

คำถามที่พบบ่อย

GitHub CLI โทเคนหมดอายุคืออะไร?

GitHub CLI โทเคนหมดอายุ คือตัวเลือกใหม่ใน GitHub CLI 2.103.0 ที่ให้ gh ล็อกอินด้วย OAuth access token อายุสั้นคู่กับ refresh token ที่หมุนเปลี่ยน gh ต่ออายุโทเคนให้เองเมื่อจำเป็น ผู้ใช้จึงไม่ต้องล็อกอินใหม่ และถ้าโทเคนหลุดออกไปจะใช้ไม่ได้ภายในไม่กี่ชั่วโมง

เปิดใช้โทเคนหมดอายุใน GitHub CLI อย่างไร?

การเปิดใช้ GitHub CLI โทเคนหมดอายุ ต้องอัปเกรด GitHub CLI เป็นรุ่น 2.103.0 ขึ้นไป แล้วล็อกอินด้วยคำสั่ง gh auth login --expiring หรือสั่ง gh config set expiring_credentials enabled เพื่อใช้กับทุกการล็อกอิน ตรวจสถานะและเวลาหมดอายุได้ด้วย gh auth status และถ้าใช้ git ผ่าน HTTPS ให้รัน gh auth setup-git

สคริปต์และ CI จะได้รับผลกระทบจากโทเคนหมดอายุอย่างไร?

เมื่อเปิด GitHub CLI โทเคนหมดอายุ สคริปต์หรือส่วนขยายที่รัน gh auth token ครั้งเดียวแล้วเก็บค่าไว้ใช้ภายหลังจะถือโทเคนที่หมดอายุในที่สุด GitHub แนะนำให้เรียก gh auth token ใหม่ทุกครั้งที่ต้องใช้ และให้ workflow ที่ต้องพึ่งโทเคนอายุยาวรอไปก่อนยังไม่ต้องเปิดใช้ ส่วนโทเคนที่ส่งผ่าน GH_TOKEN หรือ GITHUB_TOKEN จะไม่ถูกต่ออายุ

ทำไม git clone repository สาธารณะจาก GitHub จึงขึ้นว่าต้องยืนยันตัวตน?

GitHub แจ้งเมื่อ 19 ตุลาคม 2026 ว่าช่วงที่มีทราฟฟิกผิดปกติ อาจบังคับให้ยืนยันตัวตนชั่วคราวสำหรับการ clone และ fetch repository สาธารณะผ่าน HTTPS บางส่วนเพื่อรักษาเสถียรภาพของ github.com แก้ได้โดยยืนยันตัวตนแล้วลองใหม่ หรือรอจนมาตรการยกเลิก การใช้ SSH การ push และการทำงานที่ยืนยันตัวตนแล้วไม่ได้รับผลกระทบ

แหล่งอ้างอิง

  1. GitHub CLI: Opt in to expiring, auto-refreshing OAuth tokens — GitHub Changelog
  2. GitHub CLI 2.103.0 — GitHub (cli/cli)
  3. Some Git over HTTPS may temporarily require authentication — GitHub Changelog

บุคคล องค์กร และสถานที่ในข่าวนี้

เลือกชื่อเพื่ออ่านข่าวทั้งหมดที่กล่าวถึง ตัวเลขคือจำนวนข่าว

องค์กรและบริษัท
GitHub50GitLab7
แชร์FacebookXLINELinkedIn

พบข้อมูลคลาดเคลื่อน? แจ้งกองบรรณาธิการ