0Pricing
AWS Security Academy · บทเรียน

การสร้างตารางครอบข้อมูล CloudTrail

กำหนดสคีมาที่ทำให้คุณสอบถามเหตุการณ์ตรวจสอบได้โดยตรง

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

เหตุผลที่ต้องมีตาราง

Athena ไม่สามารถเรียกใช้คำสืบค้นกับไฟล์ S3 ดิบได้จนกว่าคุณจะบอกวิธีอ่านไฟล์เหล่านั้น ตารางจะจับคู่ไฟล์ JSON ของ CloudTrail ในบักเก็ต S3 กับคอลัมน์ที่ตั้งชื่อและมีชนิดข้อมูล เมื่อมีตารางแล้ว โครงสร้างอันละเอียดของเหตุการณ์ CloudTrail ก็จะสามารถอ้างอิงได้ด้วย SQL ทั่วไป

โครงสร้างบันทึก CloudTrail

CloudTrail ส่งเหตุการณ์ในรูปแบบ JSON โดยแต่ละระเบียนอธิบายการเรียกใช้ API หนึ่งครั้ง พร้อมฟิลด์ซ้อนกัน เช่น userIdentity, eventName, sourceIPAddress และ requestParameters โครงสร้างตารางต้องสะท้อนการซ้อนกันนี้ รวมถึงชนิดข้อมูล struct สำหรับออบเจ็กต์ เพื่อให้คำสืบค้นเข้าถึงฟิลด์อย่าง userIdentity.arn ได้

การใช้ DDL ที่ AWS จัดเตรียมให้

คุณไม่จำเป็นต้องเขียนโครงสร้างด้วยตนเอง AWS เผยแพร่คำสั่ง CREATE TABLE มาตรฐานสำหรับ CloudTrail และคอนโซล CloudTrail กับ Athena ก็สามารถสร้างคำสั่งนี้ให้คุณได้ การใช้ DDL ที่จัดเตรียมไว้ช่วยให้มั่นใจว่าทุกฟิลด์ รวมถึงฟิลด์ที่ซ้อนกันลึก จะถูกจับคู่อย่างถูกต้อง เพื่อให้คำสืบค้นของคุณไม่พลาดข้อมูล

SerDe

SerDe (ตัวจัดลำดับ/ตัวแยกข้อมูล) จะบอก Athena ว่าควรแยกวิเคราะห์แต่ละไฟล์อย่างไร ตาราง CloudTrail ใช้ SerDe ที่ออกแบบมาสำหรับโครงสร้าง JSON ของ CloudTrail โดยเข้าใจอาร์เรย์ records และโครงสร้างซ้อนกัน การเลือก SerDe ที่ถูกต้องเป็นสิ่งสำคัญ เพราะการเลือกผิดจะทำให้เกิดข้อผิดพลาดในการแยกวิเคราะห์หรือคอลัมน์มีค่าเป็น null

ROW FORMAT SERDE
  'com.amazon.emr.hive.serde.CloudTrailSerde'
STORED AS INPUTFORMAT
  'com.amazon.emr.cloudtrail.CloudTrailInputFormat'

การชี้ไปยังตำแหน่ง S3

ส่วนคำสั่ง LOCATION ของตารางจะชี้ไปยังคำนำหน้า S3 ที่ CloudTrail ใช้จัดเก็บบันทึก ซึ่งโดยทั่วไปเส้นทางจะมี ID บัญชีและภูมิภาครวมอยู่ด้วย การระบุคำนำหน้านี้ให้ถูกต้องเป็นเรื่องสำคัญ หากกว้างเกินไป คุณจะสแกนข้อมูลที่ไม่เกี่ยวข้อง แต่หากแคบเกินไป คุณจะพลาดเหตุการณ์ที่ต้องการคิวรี

การคิวรีฟิลด์ที่ซ้อนกัน

เมื่อสร้างตารางแล้ว คุณสามารถคิวรีฟิลด์ที่ซ้อนกันด้วยสัญลักษณ์จุด เช่น userIdentity.arn หรือ requestParameters.bucketName ฟังก์ชัน SQL ช่วยคลี่อาร์เรย์และสตริง JSON ได้ นี่คือจุดเด่นของ Athena สำหรับการสืบสวน เพราะคุณสามารถกรองตามชื่อเหตุการณ์ ตัวตนผู้เรียก และพารามิเตอร์ของการเรียก API ใด ๆ ได้อย่างแม่นยำ

โปรแกรมรวบรวมข้อมูล Glue เป็นทางเลือก

แทนที่จะเขียน DDL เอง โปรแกรมรวบรวมข้อมูล AWS Glue สามารถสแกนข้อมูลใน S3 และอนุมานสคีมาเข้าสู่ Data Catalog โดยอัตโนมัติ สำหรับรูปแบบข้อมูลที่รู้จักกันดีอย่าง CloudTrail, DDL ที่มีให้มามักสะอาดและเหมาะสมกว่า แต่โปรแกรมรวบรวมข้อมูลมีประโยชน์กับรูปแบบบันทึกแบบกำหนดเองหรือรูปแบบที่เปลี่ยนแปลงอยู่เสมอ ซึ่งคุณไม่ต้องการเขียนสคีมาด้วยตนเอง

การจัดการลักษณะเฉพาะของ JSON

JSON ของ CloudTrail มีฟิลด์ที่เป็นสตริง JSON อยู่ภายใน เช่น requestParameters เมื่อค่าต่าง ๆ ขึ้นอยู่กับบริการ คุณมักจะแยกวิเคราะห์ฟิลด์เหล่านี้ขณะคิวรีด้วยฟังก์ชัน JSON การเข้าใจว่าบางคอลัมน์เป็นสตริงที่ต้องนำมาแยกวิเคราะห์ ไม่ใช่คอลัมน์ที่มีโครงสร้างไว้ล่วงหน้า จะช่วยป้องกันความสับสนเมื่อฟิลด์หนึ่งทำงานไม่เหมือนคอลัมน์ทั่วไป

ตารางบันทึกขององค์กร

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

การตรวจสอบตาราง

หลังจากสร้างตารางแล้ว ให้เรียกใช้ SELECT อย่างรวดเร็วโดยกำหนด LIMIT ไว้เล็กน้อย เพื่อยืนยันว่ามีแถวแสดงผลและคอลัมน์มีค่าตามที่คาดไว้ หากคอลัมน์เป็น null สาเหตุน่าจะมาจาก SerDe ตำแหน่ง หรือสคีมาไม่ถูกต้อง การตรวจสอบพื้นฐานนี้ช่วยป้องกันไม่ให้คุณสร้างการสืบสวนบนตารางที่เสียโดยไม่มีสัญญาณแจ้งเตือน

จากตารางสู่การสืบสวน

เมื่อตาราง CloudTrail ถูกต้องแล้ว คุณจะมีบันทึกการตรวจสอบที่สามารถคิวรีได้และครอบคลุมประวัติทั้งหมดที่บันทึกไว้ การเข้าสู่ระบบผ่านคอนโซลทุกครั้ง การเรียก API และข้อผิดพลาดทุกอย่างจะกลายเป็นแถวที่คุณกรองและรวมข้อมูลได้ ตารางนี้เป็นรากฐานสำหรับคิวรีเหตุการณ์ที่คุณจะเขียนต่อไป

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความรู้เกี่ยวกับการสร้างตารางของคุณ

สรุปทบทวน

หากต้องการคิวรี CloudTrail ใน Athena คุณต้องสร้าง ตาราง ที่จับคู่ไฟล์ JSON กับคอลัมน์ โดยใช้ CREATE TABLE DDL ที่ AWS จัดเตรียมไว้, SerDe ที่ถูกต้อง และ LOCATION ของ S3 ที่ถูกต้อง คิวรี ฟิลด์ที่ซ้อนกัน ด้วยสัญลักษณ์จุด แยกวิเคราะห์คอลัมน์สตริง JSON ขณะคิวรี และตรวจสอบด้วย SELECT ขนาดเล็ก บันทึกขององค์กร สามารถใช้ตารางเดียวสำหรับการค้นหาภัยคุกคามทั่วทั้งองค์กรได้

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

บทเรียน “การสร้างตารางครอบข้อมูล CloudTrail” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การสร้างตารางครอบข้อมูล CloudTrail”

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

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

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

บทเรียน “การสร้างตารางครอบข้อมูล CloudTrail” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การสอบถามบันทึก S3 ด้วย Athena
  2. การสร้างตารางครอบข้อมูล CloudTrail
  3. การสืบสวนเหตุการณ์ด้วยคำสั่ง SQL
  4. การแบ่งพาร์ทิชันบันทึกเพื่อความเร็วและประหยัดค่าใช้จ่าย
← กลับไปที่ AWS Security Academy