OpenAI Mutual TLS ช่วยให้องค์กรกำหนดค่าชั้นความปลอดภัยเพิ่มเติมสำหรับทราฟฟิก OpenAI API ของตนได้ เมื่อกำหนดค่าแล้ว ควรส่งคำขอ API ไปที่ https://mtls.api.openai.com (หรือ https://mtls-eu.api.openai.com สำหรับลูกค้าที่ใช้ถิ่นที่อยู่ของข้อมูลใน EU) และทราฟฟิกจะได้รับการยอมรับก็ต่อเมื่อมีการระบุ API key และใบรับรองไคลเอ็นต์ที่ถูกต้อง mTLS ไม่มีผลกับแดชบอร์ด https://platform.openai.com ฟีเจอร์นี้อยู่ในช่วงเบต้าในขณะนี้
ฉันจะตั้งค่าการผสานการทำงาน mTLS ได้อย่างไร
บนแถบนำทางการตั้งค่า คุณจะเห็นแท็บ “Mutual TLS”
อัปโหลดใบรับรอง
เปิดใช้งานใบรับรอง
หลังจากอัปโหลดใบรับรองแล้ว ขั้นตอนถัดไปคือการเปิดใช้งานใบรับรองของคุณ เมื่อใบรับรองถูกเปิดใช้งานสำหรับโปรเจ็กต์แล้ว คำขอ API ทั้งหมดที่ส่งไปยังโปรเจ็กต์นั้นจะเริ่มต้องมีใบรับรองไคลเอ็นต์ที่สอดคล้องกันด้วย หากโปรเจ็กต์มีใบรับรองหลายใบที่เปิดใช้งานอยู่ คุณสามารถส่งใบรับรองไคลเอ็นต์ที่สอดคล้องกันใบใดก็ได้ หากใบรับรองถูกเปิดใช้งานสำหรับองค์กร ใบรับรองนั้นจะมีผลกับคำขอ API ทั้งหมด และจะถูก “สืบทอด” โดยทุกโปรเจ็กต์
ข้อกำหนดของใบรับรอง CA
คุณสามารถอัปโหลดใบรับรอง X.509 CA ในรูปแบบ PEM ใดก็ได้ที่ตรงตามข้อกำหนดต่อไปนี้:
ลงนามใบรับรองไคลเอ็นต์ที่คุณวางแผนจะใช้ส่งคำขอโดยตรง
มีส่วนขยาย Certificate Authority, Subject Key Identifier และ Authority Key Identifier (ในรูปแบบ KeyIdentifier)
มีสิทธิ์ Key Usage: “Certificate Sign, CRL Sign”
ไม่ได้ตั้งค่าให้หมดอายุภายใน 1 วัน
ขนาดใบรับรองทั้งหมดต้องน้อยกว่า 16kb
ข้อกำหนดของใบรับรองไคลเอ็นต์
ใบรับรองไคลเอ็นต์ต้องได้รับการลงนามโดยตรงจากใบรับรองที่คุณอัปโหลดไว้ล่วงหน้า ในขณะนี้ เรายังรองรับเฉพาะเชนใบรับรองความยาวเดียวเท่านั้น นอกจากนี้ ใบรับรองไคลเอ็นต์ของคุณต้องตรงตามข้อกำหนดต่อไปนี้:
มีส่วนขยาย Subject Key Identifier และ Authority Key Identifier (ในรูปแบบ KeyIdentifier)
มีสิทธิ์ Key Usage: “Digital Signature, Key Encipherment”
มีสิทธิ์ Extended Key Usage: “TLS Web Client Authentication”
มีส่วนขยาย Subject Alternate Name
คำถามที่พบบ่อย
ฉันสามารถกำหนดค่า mTLS ผ่าน API ได้หรือไม่
ได้ — คุณสามารถดูข้อมูลอ้างอิง API ได้ที่ https://platform.openai.com/docs/api-reference/ สำหรับข้อมูลเพิ่มเติม
endpoint ใดรองรับ mTLS
ในช่วงเบต้านี้ mTLS รองรับอย่างเป็นทางการใน
/v1/chat/completions (with all supported extensions e.g. image, audio, streaming, etc.)/v1/completions/v1/embeddings/v1/audio/transcriptions/v1/audio/speech/v1/files/v1/batches/v1/responses/v1/images/v1/moderations/v1/realtime (via server-side web sockets)/v1/fine_tuning/v1/tunnels
ฉันจะส่งใบรับรองไคลเอ็นต์ไปกับคำขอได้อย่างไร
สำหรับคำขอ cURL คุณสามารถใช้ตัวเลือก --cert และ --key ได้ (ดู man page ที่นี่) ใน HTTP client อื่นๆ ส่วนใหญ่ ก็มีวิธีส่งใบรับรองไคลเอ็นต์เช่นกัน ตัวอย่าง: requests ใน Python, fetch ใน JS ผ่าน SDK อย่างเป็นทางการของเรา เรายังรองรับการแทนที่ HTTP client ด้วย — ดูตัวอย่าง Python ที่นี่
ก่อนบังคับใช้ mTLS สำหรับทราฟฟิกการใช้งานจริง โปรดตรวจสอบให้แน่ใจว่า HTTP client ที่คุณใช้ทำงานได้ดีกับคำขอใบรับรองไคลเอ็นต์ (บางอย่าง เช่น WebSockets ในบางเบราว์เซอร์ อาจไม่รองรับ) โปรดทราบว่าเซิร์ฟเวอร์ของเราไม่ได้ระบุ รายการ certificate_authorities ในคำขอใบรับรองไคลเอ็นต์
ใครสามารถเข้าถึงและแก้ไขใบรับรองได้บ้าง
ผ่าน UI แดชบอร์ด https://platform.openai.com/settings/organization/mtls เจ้าขององค์กรสามารถเข้าถึงและแก้ไขใบรับรองได้ ทุกคนที่มี Admin API Key (https://platform.openai.com/settings/organization/admin-keys) ก็สามารถเข้าถึง/แก้ไขใบรับรองได้เช่นกัน แต่โปรดระวัง — หากคุณเปิดใช้งาน Mutual TLS ในระดับองค์กร คุณจะบังคับใช้ใบรับรองกับคำขอ API เหล่านี้ด้วย การเปลี่ยนแปลง mTLS ทั้งหมดจะมองเห็นได้ในบันทึกการตรวจสอบ
ฉันมีใบรับรองได้กี่ใบ
แต่ละองค์กรสามารถอัปโหลดใบรับรองได้สูงสุด 50 ใบ ซึ่งสามารถแชร์ข้ามโปรเจ็กต์ได้ แต่ไม่สามารถแชร์กับองค์กรอื่นได้ คุณสามารถเปิดใช้งาน/ปิดใช้งานใบรับรองแบบอะตอมมิกสำหรับ 10 โปรเจ็กต์ในแต่ละครั้ง อีกทางหนึ่ง คุณสามารถเปิดใช้งาน/ปิดใช้งานใบรับรอง 10 ใบในแต่ละครั้งสำหรับองค์กรของคุณ หรือสำหรับโปรเจ็กต์เฉพาะ 1 โปรเจ็กต์
ฉันสามารถอัปเดตหรือลบใบรับรองได้หรือไม่
คุณสามารถอัปเดตชื่อของใบรับรองได้ แต่ไม่สามารถอัปเดตเนื้อหาได้ คุณยังสามารถลบใบรับรองได้หากใบรับรองนั้นไม่ได้เปิดใช้งานอยู่ในขอบเขตใดๆ
การเพิกถอนใบรับรองทำงานอย่างไร
ในขณะนี้ เรายังไม่รองรับ CRL หรือ OCSP stapling ทางเลือกที่แนะนำคือการลบหรือหมุนเวียน API key ของคุณแทน คุณยังสามารถสลับใบรับรอง CA ของคุณออก หรือใช้ใบรับรองไคลเอ็นต์ที่มีระยะเวลาการใช้งานสั้นลงได้
ฉันสามารถใช้เชนใบรับรองที่มีความยาวมากกว่านี้ได้หรือไม่
ในขณะนี้ เรารองรับเฉพาะเชนความยาวเดียวเท่านั้น — กล่าวคือ ใบรับรอง CA ของคุณควรลงนามใบรับรองไคลเอ็นต์ของคุณโดยตรง โปรดติดต่อ Account Director ของคุณหากมีคำถามเพิ่มเติม
การตั้งค่าที่แนะนำคืออะไร
เมื่อตั้งค่าฟีเจอร์นี้ในช่วงแรก เราแนะนำให้เริ่มจากโปรเจ็กต์ staging ที่ไม่ได้ให้บริการทราฟฟิกการใช้งานจริงอย่างเป็นทางการ ใช้โอกาสนี้ตรวจสอบให้แน่ใจว่าใบรับรองของคุณตั้งค่าอย่างถูกต้องบนเครื่องของคุณ และคุณสามารถส่งทราฟฟิก API ได้สำเร็จ นอกจากนี้ เราแนะนำให้ปรึกษาทีมความปลอดภัยขององค์กรของคุณเพื่อทำความเข้าใจความต้องการของคุณให้ดีที่สุด
การสนับสนุนเพิ่มเติม
คุณสามารถใช้งานฟีเจอร์ mTLS ด้วยตนเองได้ทั้งหมดผ่านแดชบอร์ดและ API อย่างไรก็ตาม หากคุณต้องการเปิดใช้งาน mTLS ในโหมด shadow ก่อน โปรดติดต่อ Account Director ของคุณ หรือเปิดตั๋วขอรับการสนับสนุนโดยเริ่มแชทใหม่ที่มุมขวาล่างของหน้านี้
ภาคผนวก: คำศัพท์
ใบรับรอง CA: หนึ่งในใบรับรองที่เชื่อถือได้ของคุณ ซึ่งลงนามใบรับรองไคลเอ็นต์ที่คุณจะส่งไปกับคำขอโดยตรง คุณสามารถใช้ใบรับรอง CA ที่ลงนามด้วยตนเองได้
อัปโหลดใบรับรอง: การเพิ่มใบรับรอง CA ลงในบัญชีของคุณ ยังไม่มีการบังคับใช้ที่ใดสำหรับ mTLS แต่คุณสามารถเริ่มกำหนดค่าได้
ขอบเขต: โปรเจ็กต์เฉพาะหรือทั้งองค์กรของคุณ
เปิดใช้งานใบรับรอง CA ที่ขอบเขตหนึ่ง: เปิดใช้ mTLS สำหรับขอบเขตนั้นโดยเฉพาะ และคำขอทั้งหมดที่ใช้ API key จะต้องมีใบรับรองไคลเอ็นต์ที่ลงนามโดยใบรับรอง CA
ปิดใช้งานใบรับรอง CA ที่ขอบเขตหนึ่ง: ปิดการใช้ใบรับรองนี้เพื่อตรวจสอบคำขอในขอบเขตนี้ หากคุณไม่มีใบรับรองเหลืออยู่สำหรับขอบเขตนั้น mTLS จะถูกปิดโดยมีผลจริง
การสืบทอดใบรับรอง: หากคุณเปิดใช้งานใบรับรองสำหรับองค์กรของคุณ ใบรับรองนั้นจะเปิดใช้งานสำหรับทุกโปรเจ็กต์ด้วย
