ข้ามไปเนื้อหาหลัก

วิธีเชื่อมต่อ GitHub Actions กับ AWS แบบไม่ต้องใช้ Access Keys

เรียนรู้การใช้ OpenID Connect (OIDC) เพื่อให้ GitHub Actions ขอรับ AWS credentials ชั่วคราว ปลอดภัยกว่า ไม่ต้องหมุนเวียนกุญแจ

เรียบเรียงโดย AI
Inewgen
04 Oct 2026ที่มา: Dev.to2 นาทีอ่าน (0 ครั้ง)
แชร์
วิธีเชื่อมต่อ GitHub Actions กับ AWS แบบไม่ต้องใช้ Access Keys

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • ใช้ OIDC เชื่อมต่อ GitHub Actions กับ AWS โดยไม่ต้องเก็บ Static Access Keys
  • ตั้งค่า Identity Provider เพียงครั้งเดียวต่อบัญชี AWS
  • ควบคุมการเข้าถึงด้วย Trust Policy ระบุ Repository และ Branch ที่อนุญาต
  • GitHub workflows จะได้รับชุดคำสั่งชั่วคราวที่หมดอายุหลังจบการรัน

ในระหว่างการเรียนรู้ GitHub Actions นักพัฒนาได้เรียนรู้วิธีการยืนยันตัวตนไปยัง AWS ผ่านระบบ OpenID Connect (OIDC) ซึ่งช่วยให้เวิร์กโฟลว์สามารถขอรับชุดข้อมูลรับรอง AWS แบบชั่วคราวสำหรับใช้งานในแต่ละรอบการรันได้ทันที โดยไม่ต้องพึ่งพาการจัดเก็บ Access Key แบบถาวรอีกต่อไป

แนวทางนี้มีความปลอดภัยสูงกว่าเดิมอย่างมาก เนื่องจากไม่มีความจำเป็นต้องคอยหมุนเวียนกุญแจ (rotate) หรือบริหารจัดการชุดข้อมูลรับรองที่มีอายุการใช้งานยาวนาน ซึ่งเสี่ยงต่อการรั่วไหล โดยขั้นตอนแรกให้เข้าไปที่ AWS Console ไปที่หมวด IAM เลือก Identity providers แล้วทำการเพิ่มผู้ให้บริการ

  • ขั้นตอนนี้ทำเพียงครั้งเดียวต่อหนึ่งบัญชี AWS เท่านั้น
  • บทบาททั้งหมดที่เวิร์กโฟลว์ใช้งานสามารถแชร์ผู้ให้บริการนี้ร่วมกันได้
  • เลือกไปที่ IAM ตามด้วย Roles และ Create role
  • เลือก Web identity และเลือกผู้ให้บริการที่เพิ่งสร้างด้วย audience เป็น sts.amazonaws.com
AWS IAM console settings dashboard interface

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

หลังจากนั้น นโยบายความเชื่อมั่น (Trust Policy) จะทำหน้าที่ควบคุมว่า repository และ branch ใดของ GitHub ที่มีสิทธิ์สวมบทบาทนี้ โดยโครงสร้างนโยบายต้องระบุเงื่อนไขให้รัดกุม พร้อมทั้งแนบนโยบายสิทธิ์ที่จำเป็นขั้นต่ำ เช่น การอนุญาตให้แสดงรายการและอัปโหลดไฟล์ไปยัง S3 bucket เฉพาะเจาะจง

การใช้งาน OIDC ร่วมกับระบบคลาวด์ถือเป็นมาตรฐานความปลอดภัยยุคใหม่ (Modern Security Practice) ที่ช่วยกำจัดความเสี่ยงจากเหตุการณ์ Hardcoded Secrets ในซอร์สโค้ด การที่ระบบออก Token ชั่วคราวที่มีอายุสั้นมากๆ ช่วยลด Attack Surface หาก Token นั้นถูกขโมยไปก็จะหมดอายุอย่างรวดเร็วโดยอัตโนมัติ

เมื่อตั้งค่าเสร็จสิ้น เวิร์กโฟลว์ของคุณจะได้รับสิทธิ์ชั่วคราวที่หมดอายุทันทีหลังจบการทำงาน ช่วยลดภาระในการเก็บรักษาความลับใน GitHub secrets และตัดปัญหาเรื่องกุญแจรั่วไหลออกไปได้อย่างสิ้นเชิง

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้