ระบุประเภทไฟล์ที่แท้จริงเพื่อลดความเสี่ยง
เมื่อจัดการไฟล์ในรูปแบบอิเล็กทรอนิกส์ การระบุประเภทไฟล์ให้ถูกต้องเป็นสิ่งสำคัญ ซึ่งช่วยขจัดภัยคุกคามจากการปลอมแปลงประเภทไฟล์ ที่ไฟล์อาจถูกแสดงเป็นประเภทอื่นด้วยนามสกุลไฟล์หรือ MIME types ที่เป็นเท็จ
API ของเราระบุประเภทไฟล์จริงได้อย่างถูกต้อง เพื่อให้ระบบสามารถดำเนินการที่เหมาะสมในการป้องกันการละเมิดความปลอดภัย ความเสียหายของข้อมูล หรือการประมวลผลไฟล์โดยไม่ตั้งใจ
เมื่อระบุประเภทไฟล์ที่ถูกต้องแล้ว คุณสามารถตัดสินใจได้อย่างเหมาะสมภายในแอปพลิเคชันของคุณตามสถานการณ์ต่อไปนี้:
ประเภทไฟล์ที่รองรับ
หากประเภทไฟล์ที่ตรวจพบรวมอยู่ในรายการประเภทไฟล์ที่รองรับ คุณสามารถดำเนินการประมวลผล CDR ของไฟล์ตามปกติภายในระบบของคุณได้อย่างมั่นใจ
ประเภทไฟล์ที่ไม่รองรับ
หากประเภทไฟล์ที่ตรวจพบอยู่ในรายการประเภทไฟล์ที่ไม่รองรับ จำเป็นอย่างยิ่งที่จะต้องดำเนินการทันทีเพื่อป้องกันไม่ให้ไฟล์นั้นดำเนินต่อไปภายในระบบของคุณ
ในกรณีดังกล่าว ขอแนะนำให้คุณใช้กลไก "fail fast" เพื่อหยุดการประมวลผลไฟล์เพิ่มเติมทันที เพื่อให้มั่นใจว่าระบบของคุณได้รับการปกป้องจากการจัดการไฟล์ที่อาจเป็นอันตรายหรือไม่เข้ากัน
การปลอมแปลงประเภทไฟล์
หากประเภทไฟล์ที่ตรวจพบแตกต่างจากนามสกุลไฟล์หรือ MIME type ที่ไฟล์ประกาศไว้ อาจบ่งชี้ถึงการปลอมแปลงไฟล์ ซึ่งผู้ไม่หวังดีพยายามทำให้ระบบเข้าใจผิด
ในสถานการณ์เช่นนี้ ควรพิจารณาดำเนินการเชิงป้องกันเพิ่มเติมเพื่อจัดการไฟล์ภายในระบบของคุณ การดำเนินการเหล่านี้อาจรวมถึงการแยกไฟล์ออกมาต่างหาก การเรียกใช้การตรวจสอบความปลอดภัยเพิ่มเติม หรือการแจ้งผู้ดูแลระบบเพื่อทำการตรวจสอบต่อไป
เหตุการณ์ของ Glasswall Halo
วิธีส่งคำขอไปยัง Glasswall Halo:
- เริ่มต้นด้วยการส่งคำขอไปยัง Glasswall Halo API โดยเลือก endpoint ที่เหมาะสมตามประเภทไฟล์:
- สำหรับไฟล์ Binary ให้ใช้ endpoint
api/v3/cdr-file - สำหรับไฟล์ที่เข้ารหัสแบบ Base64 ให้ใช้ endpoint
api/v3/cdr
-
Glasswall Halo ประมวลผลคำขอและดำเนินการตรวจจับประเภทไฟล์กับไฟล์ต้นฉบับ
-
เพื่อให้แน่ใจว่าจะมีการตรวจจับประเภทไฟล์เท่านั้นโดยไม่มีการดำเนินการอื่นเพิ่มเติม ให้ใส่พารามิเตอร์
response-contentใน URL โดยตั้งค่าเป็นnoRebuiltFile,noAnalysisReportการดำเนินการนี้จะเปิดใช้งานโหมดตรวจจับประเภทไฟล์เท่านั้น -
Glasswall Halo วิเคราะห์ไฟล์โดยใช้ Glasswall Embedded Engine เพื่อระบุประเภทไฟล์ที่แท้จริง
-
เมื่อตรวจจับสำเร็จ Glasswall Halo จะใส่ประเภทไฟล์จริงที่ระบุได้ไว้ใน response header โดยใช้ header key
x-filetype -
ขณะนี้คุณสามารถใช้ข้อมูลประเภทไฟล์จริงที่ได้รับสำหรับการประมวลผลเพิ่มเติม การตรวจสอบความปลอดภัย หรือการดำเนินการอื่นใดที่จำเป็นภายในแอปพลิเคชันหรือระบบของคุณ
การยืนยันตัวตน 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 |
| 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 ด้วยตนเอง โปรดดู คู่มือเริ่มต้นอย่างรวดเร็ว ของเรา