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

ระบุประเภทไฟล์ที่แท้จริงเพื่อลดความเสี่ยง

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

API ของเราระบุประเภทไฟล์จริงได้อย่างถูกต้อง เพื่อให้ระบบสามารถดำเนินการที่เหมาะสมในการป้องกันการละเมิดความปลอดภัย ความเสียหายของข้อมูล หรือการประมวลผลไฟล์โดยไม่ตั้งใจ

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

ประเภทไฟล์ที่รองรับ

หากประเภทไฟล์ที่ตรวจพบรวมอยู่ในรายการประเภทไฟล์ที่รองรับ คุณสามารถดำเนินการประมวลผล CDR ของไฟล์ตามปกติภายในระบบของคุณได้อย่างมั่นใจ

ประเภทไฟล์ที่ไม่รองรับ

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

ในกรณีดังกล่าว ขอแนะนำให้คุณใช้กลไก "fail fast" เพื่อหยุดการประมวลผลไฟล์เพิ่มเติมทันที เพื่อให้มั่นใจว่าระบบของคุณได้รับการปกป้องจากการจัดการไฟล์ที่อาจเป็นอันตรายหรือไม่เข้ากัน

การปลอมแปลงประเภทไฟล์

หากประเภทไฟล์ที่ตรวจพบแตกต่างจากนามสกุลไฟล์หรือ MIME type ที่ไฟล์ประกาศไว้ อาจบ่งชี้ถึงการปลอมแปลงไฟล์ ซึ่งผู้ไม่หวังดีพยายามทำให้ระบบเข้าใจผิด

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

เหตุการณ์ของ Glasswall Halo

วิธีส่งคำขอไปยัง Glasswall Halo:

  1. เริ่มต้นด้วยการส่งคำขอไปยัง Glasswall Halo API โดยเลือก endpoint ที่เหมาะสมตามประเภทไฟล์:
  • สำหรับไฟล์ Binary ให้ใช้ endpoint api/v3/cdr-file
  • สำหรับไฟล์ที่เข้ารหัสแบบ Base64 ให้ใช้ endpoint api/v3/cdr
  1. Glasswall Halo ประมวลผลคำขอและดำเนินการตรวจจับประเภทไฟล์กับไฟล์ต้นฉบับ

  2. เพื่อให้แน่ใจว่าจะมีการตรวจจับประเภทไฟล์เท่านั้นโดยไม่มีการดำเนินการอื่นเพิ่มเติม ให้ใส่พารามิเตอร์ response-content ใน URL โดยตั้งค่าเป็น noRebuiltFile,noAnalysisReport การดำเนินการนี้จะเปิดใช้งานโหมดตรวจจับประเภทไฟล์เท่านั้น

  3. Glasswall Halo วิเคราะห์ไฟล์โดยใช้ Glasswall Embedded Engine เพื่อระบุประเภทไฟล์ที่แท้จริง

  4. เมื่อตรวจจับสำเร็จ Glasswall Halo จะใส่ประเภทไฟล์จริงที่ระบุได้ไว้ใน response header โดยใช้ header keyx-filetype

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

การยืนยันตัวตน API

Glasswall Halo รองรับการยืนยันตัวตน 2 ประเภท: Basic และ Bearer ก่อนส่งคำขอใด ๆ คุณต้องยืนยันตัวตนโดยใช้รูปแบบที่เหมาะสมตามการกำหนดค่าของคุณ

Basic

หากระบบของคุณถูกกำหนดค่าให้ใช้การยืนยันตัวตนแบบ Basic คุณต้องขอ organisation ID และ token จากผู้ดูแลระบบ จากนั้นรวมค่าเหล่านี้ในรูปแบบ<OrganisationId>:<Token>แล้วเข้ารหัสด้วย Base64 ค่าที่เข้ารหัสแล้วควรถูกรวมไว้ใน request header ดังนี้:

Authorization: Basic ZGVtbzpwQDU1dzByZA==

Bearer

สำหรับการยืนยันตัวตนแบบ bearer คุณจะต้องใช้ bearer token ที่ได้รับจากผู้ให้บริการข้อมูลประจำตัวของคุณ เมื่อคุณได้รับ token แล้ว ให้ใส่ไว้ใน request header ดังนี้:

Authorization: Bearer ZGVtbzpwQDU1dzByZA==

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

เรียนรู้เพิ่มเติมเกี่ยวกับการยืนยันตัวตนของ Glasswall Halo

การสร้างคำขอ

หากต้องการประมวลผลไฟล์ไบนารีหรือไฟล์ที่เข้ารหัส base64 โดยใช้ Glasswall Halo ให้ทำตามคำแนะนำด้านล่าง:

การประมวลผลไฟล์แบบไบนารี

ส่งสตริงไบนารีในเนื้อหาคำขอไปยัง endpoint ต่อไปนี้:

POST {baseUrl}/api/v3/cdr-file?response-content=noRebuiltFile,noAnalysisReport

การประมวลผลไฟล์ที่เข้ารหัสแบบ Base64

ส่งสตริงที่เข้ารหัสแบบ Base64 ในเนื้อหาคำขอไปยัง endpoint ต่อไปนี้:

POST {baseUrl}/api/v3/cdr?response-content=noRebuiltFile,noAnalysisReport

รูปแบบเนื้อหาคำขอ

เนื้อหาของคำขอควรอยู่ในรูปแบบ JSON และมีฟิลด์ Base64 ที่มีสตริงของไฟล์ซึ่งเข้ารหัสแบบ Base64 และฟิลด์ filename ที่ระบุชื่อไฟล์ต้นฉบับ (รวมถึงนามสกุลไฟล์ที่เหมาะสม)

{
"base64": "string",
"fileName": "filename.pdf",
}

หมายเหตุ

  • แทนที่ {baseurl} ด้วย base URL จริงของ Glasswall Halo API
  • ควรระบุ auth header ที่ถูกต้องในทุกคำขอ
  • การตั้งค่า response-content เป็น noRebuiltFile,noAnalysisReport ใน URL ช่วยให้มั่นใจว่าจะดำเนินการตรวจจับประเภทไฟล์เท่านั้น โดยไม่มีการสร้างไฟล์ใหม่หรือสร้างรายงานการวิเคราะห์
  • สำหรับการประมวลผลไฟล์ไบนารี ให้ใช้ multipart form post ส่วนสำหรับการประมวลผลไฟล์ที่เข้ารหัสแบบ Base64 ให้ระบุเนื้อหาไฟล์ใน JSON request body พร้อมชื่อไฟล์ที่เหมาะสม

การจัดการการตอบกลับ

หลังจากส่งคำขอสำเร็จ คุณจะได้รับรหัสสถานะ 201 อย่างไรก็ตาม เมื่อเรียกใช้ API ในโหมดตรวจจับประเภทไฟล์ จะไม่มีเอาต์พุตไฟล์ใน response หากต้องการระบุประเภทไฟล์จริง ให้ตรวจสอบ response header และค้นหาคีย์ x-filetype ค่าของ header นี้จะระบุประเภทไฟล์จริง

  • หากค่า x-filetype เป็น unknown หมายความว่า Glasswall ไม่สามารถระบุประเภทไฟล์จริงของไฟล์ที่กำหนดได้

  • หากค่า x-filetype เป็น 'txt' แสดงว่าไฟล์นั้นมีข้อความ UTF-8 หรือ ASCII ล้วน

Status: 201 Created
Headers:
access-control-allow-origin: *
access-control-expose-headers: *
content-length: 0
content-type: text/plain
date: Thu,20 Jul 2023 10:55:46 GMT
strict-transport-security: max-age=31536000; includeSubDomains
x-applied-policy: service-dynamic
x-file-size: 301189
x-filetype: pdf
x-processing-id: 779b6828-1e1b-4148-9dc0-a3f1e38cb119
x-processing-status: rebuilt

ในตัวอย่างข้างต้น ค่า x-filetype คือ PDF ซึ่งบ่งชี้ว่าประเภทไฟล์จริงคือเอกสาร PDF

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

ค่าที่คาดหวัง

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

ค่าประเภทไฟล์นามสกุลไฟล์
Doc.Doc, .dot
Xls.Xls, .xlt
Ppt.Ppt, .pps, .pot
PDF.PDF
Docx.Docx, .docm, .dotx, .dotm
Xlsx.Xlsx, .xltx, .xltm, .xlsm
Pptx.Pptx, .pptm, .ppsx, .ppam, .potm, .ppsm, .potx
Tiff.Tif, .tiff, .geotiff
Svg.Svg
Emf.Emf
Wmf.Wmf
Jpeg.Jpeg, .jpg, .jpe, .jif, .jfif, .jfi
Png.Png
Gif.Gif
Bmp.Bmp, .dib

สรุป

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

เริ่มต้นอย่างรวดเร็ว

หากต้องการทดลองใช้ Glasswall Halo ด้วยตนเอง โปรดดู คู่มือเริ่มต้นอย่างรวดเร็ว ของเรา