บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง
กำหนดให้เข้ารหัสข้อมูล เพื่อไม่ให้จัดเก็บข้อมูลที่ไม่มีการป้องกันได้
บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง เป็นบทเรียน AWS Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AWS Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AWS Security Academy มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดค่าเริ่มต้นจึงสำคัญ
การพึ่งพาให้ผู้คนจำได้ว่าเปิดใช้การเข้ารหัสหรือไม่ ย่อมทำให้เกิดช่องว่างอย่างแน่นอน แนวทางที่รัดกุมคือ กำหนดให้การเข้ารหัสเป็นค่าเริ่มต้น และปิดกั้นทุกอย่างที่ไม่ได้เข้ารหัส
วิธีนี้เปลี่ยนจากการหวังให้ปฏิบัติตามข้อกำหนดไปเป็นการ บังคับใช้ ข้อกำหนดอย่างเป็นโครงสร้างทั่วทั้งบัญชี
การเข้ารหัสเริ่มต้นของ S3
บักเก็ต S3 ทุกบักเก็ตจะใช้ การเข้ารหัสเริ่มต้น ในขณะนี้ โดยออบเจ็กต์จะถูกเข้ารหัสฝั่งเซิร์ฟเวอร์ แม้ผู้อัปโหลดจะไม่ได้ร้องขอ
คุณสามารถกำหนดค่าเริ่มต้นเป็น SSE-KMS พร้อมคีย์เฉพาะได้ เพื่อให้ออบเจ็กต์ใหม่ทั้งหมดได้รับการปกป้องและตรวจสอบย้อนหลังได้โดยไม่ต้องตั้งค่าในการอัปโหลดแต่ละครั้ง
การปฏิเสธการอัปโหลดที่ไม่ได้เข้ารหัส
หากต้องการยกระดับการควบคุม นโยบายบักเก็ตสามารถ ปฏิเสธ PutObject ใดก็ตามที่ไม่ได้ร้องขอการเข้ารหัสตามที่กำหนด
วิธีนี้จะปฏิเสธการเขียนข้อมูลที่พยายามหลีกเลี่ยงการเข้ารหัส ทำให้มั่นใจได้ว่าจะไม่มีข้อมูลที่ไม่ได้รับการปกป้องถูกจัดเก็บ เป็นรูปแบบที่ใช้กันทั่วไปสำหรับบักเก็ตที่มีข้อมูลสำคัญ
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::secure-bucket/*",
"Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "aws:kms" } }
}การเข้ารหัส EBS เป็นค่าเริ่มต้น
คุณสามารถเปิดใช้ การเข้ารหัส EBS เป็นค่าเริ่มต้น แยกตามแต่ละรีเจียนได้
เมื่อเปิดใช้แล้ว วอลุ่มและสแนปช็อต EBS ใหม่ทุกรายการในรีเจียนนั้นจะถูกเข้ารหัสโดยอัตโนมัติด้วยคีย์ KMS ที่คุณเลือก วิธีนี้ช่วยปิดช่องว่างจากการเปิดใช้งานวอลุ่มที่ไม่ได้เข้ารหัสโดยไม่ตั้งใจ
การบังคับใช้ด้วย SCP
Service Control Policies (SCPs) ใช้บังคับการเข้ารหัสทั่วทั้ง องค์กร
SCP สามารถปฏิเสธการดำเนินการต่าง ๆ เช่น การสร้างอินสแตนซ์หรือวอลุ่ม RDS ที่ไม่ได้เข้ารหัสในบัญชีสมาชิกใด ๆ เนื่องจาก SCP จำกัดขอบเขตสิทธิ์ จึงไม่มีใคร แม้แต่ผู้ดูแลระบบ สามารถหลีกเลี่ยงการบังคับใช้นี้ได้
การตรวจจับการไม่ปฏิบัติตามข้อกำหนดด้วย Config
กฎ AWS Config จะตรวจสอบอย่างต่อเนื่องว่าทรัพยากรได้รับการเข้ารหัสหรือไม่
- กฎจะแจ้งเตือนวอลุ่ม บักเก็ต และฐานข้อมูลที่ไม่ได้เข้ารหัส
- เมื่อทำงานร่วมกับ การแก้ไขปัญหาอัตโนมัติ กฎสามารถแก้ไขหรือรายงานการเปลี่ยนแปลงจากค่าที่กำหนดได้โดยอัตโนมัติ
วิธีนี้ให้ความมั่นใจอย่างต่อเนื่อง นอกเหนือจากการตรวจสอบการตั้งค่า ณ เวลาใดเวลาหนึ่ง
การกำหนดให้ใช้คีย์เฉพาะ
ค่าเริ่มต้นสามารถกำหนดให้ใช้ไม่ใช่เพียง "การเข้ารหัสใด ๆ" แต่ต้องเป็น คีย์ KMS เฉพาะ
นโยบายจะใช้เงื่อนไขเพื่อกำหนด ARN ของคีย์ที่ต้องการโดยเฉพาะ ทำให้มั่นใจได้ว่าข้อมูลถูกเข้ารหัสด้วยคีย์ที่ทีมของคุณควบคุมและตรวจสอบ แทนที่จะใช้คีย์ที่ AWS จัดการให้เป็นค่าเริ่มต้น
การป้องกันและการตรวจจับร่วมกัน
แนวทางการรักษาความปลอดภัยที่รัดกุมที่สุดคือการผสานทั้งสองรูปแบบเข้าด้วยกัน:
- การควบคุมแบบ ป้องกันล่วงหน้า (SCP นโยบายบักเก็ต และการตั้งค่าเริ่มต้น) จะป้องกันไม่ให้สร้างทรัพยากรที่ไม่ได้เข้ารหัส
- การควบคุมแบบ ตรวจจับ (Config และ Security Hub) จะตรวจจับสิ่งที่หลุดรอดไป
หลักการป้องกันหลายชั้นใช้กับการเข้ารหัสได้เช่นกัน
การเข้ารหัสใน CI/CD
เลื่อนการบังคับใช้ไปทาง ซ้าย ด้วยการตรวจสอบเทมเพลตโครงสร้างพื้นฐานเป็นโค้ดก่อนการนำไปใช้งาน
เครื่องมือและการตรวจสอบนโยบายแบบกำหนดเองจะตรวจสอบว่า CloudFormation หรือ Terraform ตั้งค่าการเข้ารหัสไว้หรือไม่ เพื่อปิดกั้นทรัพยากรที่ไม่เป็นไปตามข้อกำหนดตั้งแต่ในกระบวนการส่งมอบ แทนที่จะรอจนถึงระบบจริง
การบังคับใช้ TLS ควบคู่กับการเข้ารหัสขณะจัดเก็บ
การเข้ารหัสเริ่มต้นมักหมายถึงการเข้ารหัสขณะจัดเก็บ แต่คุณควรบังคับใช้การเข้ารหัส ขณะรับส่งข้อมูล ด้วย
นโยบายบักเก็ต S3 ที่ใช้เงื่อนไข aws:SecureTransport จะปฏิเสธคำขอใด ๆ ที่ไม่ได้ส่งผ่าน TLS การใช้วิธีนี้ร่วมกับการเข้ารหัสขณะจัดเก็บเป็นค่าเริ่มต้น ทำให้ข้อมูลได้รับการปกป้องทั้งขณะจัดเก็บและขณะเคลื่อนย้าย
การรวมแนวทางการบังคับใช้
กลยุทธ์ที่ครบถ้วนคือเปิดใช้ การเข้ารหัสเริ่มต้น สำหรับ S3 และ EBS ปฏิเสธการสร้างทรัพยากรที่ไม่ได้เข้ารหัสด้วย SCP และนโยบายบักเก็ต และตรวจสอบด้วย Config และ Security Hub
การเข้ารหัสจึงกลายเป็นสิ่งที่รับประกันได้ ไม่ใช่ตัวเลือก
ตรวจสอบอย่างรวดเร็ว
เลือกแนวทางการบังคับใช้ที่รัดกุมที่สุด
สรุปทบทวน
คุณได้เรียนรู้วิธีบังคับใช้การเข้ารหัสเริ่มต้น
- การเข้ารหัสเริ่มต้น บน S3 และ EBS ทำให้การปกป้องข้อมูลเกิดขึ้นโดยอัตโนมัติ
- SCP และนโยบายบักเก็ต ปฏิเสธการสร้างทรัพยากรที่ไม่ได้เข้ารหัสทั่วทั้งองค์กร
- Config และ Security Hub ตรวจจับทุกสิ่งที่หลุดรอดไป
คำถามที่พบบ่อย
บทเรียน “บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AWS Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AWS Security Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง”
กำหนดให้เข้ารหัสข้อมูล เพื่อไม่ให้จัดเก็บข้อมูลที่ไม่มีการป้องกันได้ คุณปฏิบัติ AWS Security Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AWS Security Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน AWS Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน AWS Security Academy นี้ได้ไหม
ได้ บทเรียน AWS Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การเข้ารหัส S3, EBS และ RDS ขณะจัดเก็บ
- บังคับใช้การเข้ารหัสเริ่มต้นทุกแห่ง
- ใบรับรอง TLS ด้วย AWS Certificate Manager
- จัดเก็บข้อมูลรับรองใน Secrets Manager