การเข้ารหัสค่าด้วย helm-secrets และ SOPS
การจัดเก็บค่า Secret ที่เข้ารหัสไว้อย่างปลอดภัยใน Git
การเข้ารหัสค่าด้วย helm-secrets และ SOPS เป็นบทเรียน Helm Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Helm Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน
เข้ารหัสแล้วจึงคอมมิต
หากคุณสามารถเก็บค่าลับไว้ใน Git ได้อย่างปลอดภัยจะเป็นอย่างไร การเข้ารหัสทำให้เป็นไปได้ เพราะไฟล์จะอ่านไม่ได้หากไม่มีกุญแจที่ถูกต้อง 🔐
รู้จัก SOPS
SOPS เป็นเครื่องมือที่เข้ารหัสค่าภายในไฟล์ YAML โดยยังคงให้เห็นคีย์ได้ ทำให้ยังตรวจสอบความแตกต่างของไฟล์ได้เข้าใจง่าย
เข้ารหัสเฉพาะค่า
จุดเด่นสำคัญของ SOPS คือการเข้ารหัสเฉพาะค่า คุณยังเห็นได้ว่ามีคีย์ใดอยู่บ้าง เพียงแต่จะไม่เห็นเนื้อหาลับของคีย์เหล่านั้น
db:
password: ENC[AES256_GCM,data:9fK2...,type:str]มีบริการกุญแจรองรับ
SOPS ใช้กุญแจหลักจากผู้ให้บริการอย่าง age, AWS KMS หรือ GCP KMS ในการเข้ารหัส จึงมีเพียงผู้ถือกุญแจที่ได้รับอนุญาตเท่านั้นที่ถอดรหัสได้
ปลั๊กอิน helm-secrets
ปลั๊กอิน helm-secrets เชื่อม SOPS เข้ากับ Helm ทำให้ Helm ถอดรหัสไฟล์ค่าที่เข้ารหัสไว้ได้ทันทีระหว่างเรียกใช้คำสั่ง
helm plugin install https://github.com/jkroepke/helm-secretsการเข้ารหัสไฟล์
คุณใช้ปลั๊กอินครอบไฟล์ค่าเพื่อเข้ารหัสไฟล์นั้นโดยตรง เปลี่ยนข้อมูลลับแบบข้อความธรรมดาให้เป็นข้อความเข้ารหัสที่ปลอดภัยและพร้อมเก็บใน Git
helm secrets encrypt secrets.yaml > secrets.enc.yamlถอดรหัสเมื่อเวลานำไปใช้งาน
เมื่อติดตั้งหรืออัปเกรด helm-secrets จะถอดรหัสไฟล์เฉพาะในการทำงานครั้งนั้น แล้วส่งข้อความธรรมดาให้ Helm ในหน่วยความจำเท่านั้น
helm secrets install myapp ./chart -f secrets.enc.yamlคำนำหน้าคำสั่ง secrets
คุณเพียงเติม secrets ไว้หน้าคำสั่ง Helm ปกติ ปลั๊กอินจะจัดการถอดรหัส แล้วส่งทุกอย่างต่อไปยัง Helm
helm secrets upgrade myapp ./chart -f secrets.enc.yamlคอมมิตเฉพาะข้อความเข้ารหัส
คุณคอมมิตไฟล์ที่เข้ารหัสแล้ว และเก็บข้อความธรรมดาไว้นอก Git ทั้งหมด ดังนั้นที่เก็บโค้ดจะไม่มีสิ่งที่ผู้โจมตีนำไปใช้ประโยชน์ได้
หมุนเวียนด้วยการเข้ารหัสใหม่
หากต้องการเปลี่ยนผู้ที่สามารถอ่านข้อมูลลับได้ ให้หมุนเวียนกุญแจและเข้ารหัสไฟล์ใหม่ SOPS รองรับผู้รับหลายรายเพื่อให้ใช้ร่วมกันได้
กุญแจอยู่นอก Git
แนวคิดทั้งหมดนี้ขึ้นอยู่กับการเก็บกุญแจถอดรหัสไว้นอกที่เก็บโค้ด โดยอยู่กับบุคคลหรือ KMS และไม่อยู่ข้างข้อความเข้ารหัส
ตรวจสอบอย่างรวดเร็ว
SOPS เข้ารหัสส่วนใดในไฟล์ YAML
ทบทวน
คุณได้เรียนรู้ว่า helm-secrets ร่วมกับ SOPS เข้ารหัสค่าเพื่อจัดเก็บใน Git อย่างปลอดภัย และถอดรหัสเฉพาะเวลานำไปใช้งานได้อย่างไร 🎉
คำถามที่พบบ่อย
บทเรียน “การเข้ารหัสค่าด้วย helm-secrets และ SOPS” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การเข้ารหัสค่าด้วย helm-secrets และ SOPS” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Helm Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Helm Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การเข้ารหัสค่าด้วย helm-secrets และ SOPS”
การจัดเก็บค่า Secret ที่เข้ารหัสไว้อย่างปลอดภัยใน Git คุณปฏิบัติ Helm Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Helm Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Helm Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “การเข้ารหัสค่าด้วย helm-secrets และ SOPS” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Helm Academy นี้ได้ไหม
ได้ บทเรียน Helm Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เหตุใดจึงไม่ควรเก็บ Secrets ไว้ใน values.yaml
- การเข้ารหัสค่าด้วย helm-secrets และ SOPS
- การดึงข้อมูลจาก External Secrets Operators
- การสร้างแม่แบบทรัพยากร Kubernetes Secret