0Pricing
Sveltejs Academy · บทเรียน

การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม

ทำความเข้าใจว่า SvelteKit ป้องกันการปลอมแปลงคำขอข้ามไซต์ในแอ็กชันแบบฟอร์มอย่างไร

การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม เป็นบทเรียน Sveltejs Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Sveltejs Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Sveltejs Academy มีบทเรียนทั้งหมด 4 บทเรียน

CSRF คืออะไร

การปลอมแปลงคำขอข้ามไซต์หลอกให้เบราว์เซอร์ของผู้ใช้ที่ยืนยันตัวตนแล้วส่งคำขอปลอมไปยังไซต์ของคุณ

ค่าเริ่มต้นของ SvelteKit

แอ็กชันแบบฟอร์มของ SvelteKit จะบล็อกคำขอจากแหล่งที่มาข้ามโดเมนตามค่าเริ่มต้น ซึ่งช่วยลดความเสี่ยงจาก CSRF

วิธีการทำงาน

SvelteKit จะตรวจสอบส่วนหัว Origin กับโฮสต์สำหรับเมธอดที่เปลี่ยนแปลงสถานะ

คุกกี้แบบ SameSite

กำหนด sameSite: "lax" ให้กับคุกกี้เพื่อเพิ่มการป้องกันอีกชั้น

ปิดใช้งานอย่างระมัดระวัง

คุณสามารถปิดการป้องกัน CSRF ได้ผ่าน csrf: { checkOrigin: false } ใน svelte.config.js แต่แทบไม่เคยแนะนำให้ทำเช่นนั้น

การส่งฟอร์มจากภายนอก

หากจำเป็นต้องยอมรับการส่งข้อมูลข้ามต้นทาง ให้ใช้โทเค็น API แทน

ทดสอบ CSRF

ลองส่งข้อมูลไปยังฟอร์มจากต้นทางที่ไม่เกี่ยวข้องกัน เช่น JSFiddle — SvelteKit ควรปฏิเสธคำขอดังกล่าว

เมธอด GET

คำขอ GET จะไม่ถูกป้องกันด้วย CSRF โดยค่าเริ่มต้น ดังนั้นอย่าใช้ GET เพื่อเปลี่ยนแปลงสถานะ

การป้องกันหลายชั้น

ใช้คุกกี้แบบ SameSite การตรวจสอบ Origin และโทเค็นยืนยันตัวตนร่วมกันเพื่อสร้างความปลอดภัยหลายชั้น

ข้อผิดพลาดที่พบบ่อย

การเก็บ JWT ไว้ใน localStorage แล้วอ่านผ่าน fetch จะทำให้การป้องกันด้วย SameSite ใช้ไม่ได้ผล

บันทึกการตรวจสอบ

บันทึกความพยายามข้ามต้นทางที่น่าสงสัยเพื่อช่วยตรวจจับการโจมตีได้ตั้งแต่เนิ่น ๆ

ตรวจสอบอย่างรวดเร็ว

โดยค่าเริ่มต้น SvelteKit ตรวจสอบอะไรเพื่อป้องกัน CSRF

สรุป

SvelteKit จะบล็อกคำขอ POST จากต้นทางอื่นโดยค่าเริ่มต้น ควรใช้ร่วมกับคุกกี้แบบ SameSite และอย่าปิดการป้องกันโดยไม่ไตร่ตรอง

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

บทเรียน “การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Sveltejs Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Sveltejs Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม”

ทำความเข้าใจว่า SvelteKit ป้องกันการปลอมแปลงคำขอข้ามไซต์ในแอ็กชันแบบฟอร์มอย่างไร คุณปฏิบัติ Sveltejs Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Sveltejs Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Sveltejs Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Sveltejs Academy นี้ได้ไหม

ได้ บทเรียน Sveltejs Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การป้องกัน CSRF ในแอ็กชันแบบฟอร์ม
  2. การป้องกัน XSS ใน {#html}
  3. ตัวแปรสภาพแวดล้อม: $env/static และ $env/dynamic
  4. การจำกัดอัตราด้วย Hooks
← กลับไปที่ Sveltejs Academy