1. ใช้คีย์ API แยกกันสำหรับสมาชิกแต่ละคนในทีมที่อยู่ในบัญชีของคุณเสมอ
คีย์ API คือรหัสเฉพาะที่ใช้ระบุว่าคำขอที่ส่งไปยัง API มาจากคุณ คีย์ API ของคุณมีไว้ให้คุณใช้งานเท่านั้น การใช้คีย์ API ร่วมกันขัดต่อข้อตกลงการใช้งาน
เมื่อเริ่มทดลองใช้งาน คุณอาจต้องการให้ทีมเข้าถึง API ได้ด้วย OpenAI ไม่รองรับการใช้คีย์ API ร่วมกัน โปรดเชิญสมาชิกใหม่เข้าบัญชีของคุณจากหน้าสมาชิก แล้วพวกเขาจะได้รับคีย์เฉพาะของตนเองอย่างรวดเร็วเมื่อเข้าสู่ระบบ คุณยังสามารถกำหนดสิทธิ์ให้คีย์ API แต่ละคีย์ได้ด้วย
2. สร้างคีย์ API ที่มีวันหมดอายุและกำหนดกระบวนการเปลี่ยนคีย์
คุณสามารถสร้างคีย์โปรเจกต์โดยกำหนดวันหมดอายุได้ เมื่อพ้นวันดังกล่าว ระบบจะปฏิเสธคำขอทั้งหมดที่ใช้คีย์เหล่านั้น เราขอแนะนำอย่างยิ่งให้สร้างคีย์ที่มีวันหมดอายุและกำหนดกระบวนการเปลี่ยนคีย์อย่างสม่ำเสมอ ก่อนคีย์หมดอายุ ให้สร้างคีย์ใหม่มาทดแทน อัปเดตแอปพลิเคชันให้ใช้คีย์ใหม่ และเพิกถอนคีย์เก่าเมื่อคุณตรวจสอบแล้วว่าคีย์ใหม่ใช้งานได้ แนวทางเหล่านี้ช่วยลดผลกระทบจากการรั่วไหลของคีย์ API ได้อย่างมาก
ผู้ดูแลระบบสามารถบังคับใช้อายุการใช้งานสูงสุดของคีย์ API ในระดับองค์กรหรือโปรเจกต์ได้ที่การตั้งค่าแพลตฟอร์ม คีย์ใหม่ต้องกำหนดอายุการใช้งานภายในขีดจำกัดที่อนุญาต เพื่อป้องกันไม่ให้คีย์ใช้งานได้โดยไม่มีกำหนดสิ้นสุด ขีดจำกัดของโปรเจกต์ต้องไม่เกินขีดจำกัดขององค์กร
สำหรับเวิร์กโหลดที่รองรับ ให้ใช้การยืนยันตัวตนเวิร์กโหลดแบบสหพันธ์แทนการจัดเก็บคีย์ OpenAI API ที่มีอายุการใช้งานยาวนาน เวิร์กโหลดของคุณจะใช้ข้อมูลยืนยันตัวตนจากผู้ให้บริการที่เชื่อถือได้เพื่อแลกรับโทเค็นสำหรับเข้าถึง OpenAI ที่มีอายุการใช้งานสั้น ตั้งค่าบัญชีบริการเฉพาะ โดยให้สิทธิ์เฉพาะที่เวิร์กโหลดจำเป็นต้องใช้เท่านั้น
3. ห้ามใส่คีย์ไว้ในสภาพแวดล้อมฝั่งไคลเอนต์ เช่น เบราว์เซอร์หรือแอปมือถือ
การเปิดเผยคีย์ OpenAI API ในสภาพแวดล้อมฝั่งไคลเอนต์ เช่น เบราว์เซอร์หรือแอปมือถือ ทำให้ผู้ไม่ประสงค์ดีนำคีย์นั้นไปส่งคำขอในนามของคุณได้ ซึ่งอาจทำให้เกิดค่าใช้จ่ายที่ไม่คาดคิดหรือทำให้ข้อมูลบางส่วนในบัญชีถูกเข้าถึงโดยไม่ได้รับอนุญาต ควรส่งคำขอผ่านเซิร์ฟเวอร์แบ็กเอนด์ของคุณเองเสมอ เพื่อให้คุณเก็บรักษาคีย์ API ได้อย่างปลอดภัย
4. อย่าคอมมิตคีย์ไปยัง Repository ของคุณ
การคอมมิตคีย์ API ลงในซอร์สโค้ดเป็นช่องทางที่พบบ่อยซึ่งทำให้ข้อมูลเข้าสู่ระบบรั่วไหล หากใช้ Repository สาธารณะ นี่เป็นวิธีที่พบบ่อยซึ่งอาจทำให้คุณเผยแพร่คีย์บนอินเทอร์เน็ตโดยไม่รู้ตัว Repository ส่วนตัวปลอดภัยกว่า แต่หากเกิดการละเมิดข้อมูล คีย์ของคุณก็อาจรั่วไหลได้เช่นกัน ด้วยเหตุนี้ เราจึงขอแนะนำอย่างยิ่งให้ใช้ตัวแปรสภาพแวดล้อมเป็นมาตรการเชิงรุกในการรักษาความปลอดภัยของคีย์
5. ใช้ตัวแปรสภาพแวดล้อมแทนการระบุคีย์ API โดยตรง
การตั้งค่าบน Windows
ตัวแปรสภาพแวดล้อมคือตัวแปรที่ตั้งค่าไว้ในระบบปฏิบัติการ แทนที่จะตั้งค่าภายในแอปพลิเคชัน ตัวแปรนี้ประกอบด้วยชื่อและค่า เราแนะนำให้ตั้งชื่อตัวแปรว่า OPENAI_API_KEY การใช้ชื่อตัวแปรนี้ให้เหมือนกันทั้งทีมช่วยให้คุณคอมมิตและแชร์โค้ดได้โดยไม่เสี่ยงต่อการเปิดเผยคีย์ API
ตัวเลือกที่ 1: ตั้งค่าตัวแปรสภาพแวดล้อม “OPENAI_API_KEY” ผ่านหน้าต่าง cmd
เรียกใช้คำสั่งต่อไปนี้ในหน้าต่าง cmd โดยแทนที่ <yourkey> ด้วยคีย์ API ของคุณ:
setx OPENAI_API_KEY "<yourkey>"การตั้งค่านี้จะมีผลกับหน้าต่างพรอมต์คำสั่ง cmd ที่เปิดหลังจากนี้ ดังนั้นคุณต้องเปิดหน้าต่างใหม่เพื่อใช้ตัวแปรดังกล่าวกับ curl คุณตรวจสอบว่าตั้งค่าตัวแปรนี้แล้วได้โดยเปิดหน้าต่างพรอมต์คำสั่ง cmd ใหม่ แล้วพิมพ์
echo %OPENAI_API_KEY%ตัวเลือกที่ 2: ตั้งค่าตัวแปรสภาพแวดล้อม “OPENAI_API_KEY” ผ่านแผงควบคุม
เปิดคุณสมบัติระบบ แล้วเลือก การตั้งค่าระบบขั้นสูง
เลือก ตัวแปรสภาพแวดล้อม...
เลือก ใหม่… ในส่วนตัวแปรของผู้ใช้ (ด้านบน) เพิ่มคู่ชื่อและค่าคีย์ โดยแทนที่ <yourkey> ด้วยคีย์ API ของคุณ
ชื่อตัวแปร: OPENAI_API_KEY
ค่าตัวแปร: <yourkey>การตั้งค่าบน Linux และ macOS
ตัวเลือกที่ 1: ตั้งค่าตัวแปรสภาพแวดล้อม “OPENAI_API_KEY” โดยใช้ zsh
เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล โดยแทนที่ yourkey ด้วยคีย์ API ของคุณ
echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrcอัปเดตเชลล์ด้วยตัวแปรใหม่:
source ~/.zshrcยืนยันว่าคุณได้ตั้งค่าตัวแปรสภาพแวดล้อมแล้วโดยใช้คำสั่งต่อไปนี้
echo $OPENAI_API_KEYค่าของคีย์ API ของคุณจะเป็นเอาต์พุตที่ได้
ตัวเลือกที่ 2: ตั้งค่าตัวแปรสภาพแวดล้อม ‘OPENAI_API_KEY’ โดยใช้ bash
ทำตามคำแนะนำในตัวเลือกที่ 1 โดยแทนที่ .zshrc ด้วย .bash_profile
เรียบร้อยแล้ว! ตอนนี้คุณสามารถอ้างอิงคีย์ใน curl หรือโหลดใน Python ของคุณได้แล้ว:
import os
import openai
openai.api_key = os.environ["OPENAI_API_KEY"]6. ใช้บริการจัดการคีย์
มีผลิตภัณฑ์หลากหลายที่ช่วยจัดการคีย์ API ลับได้อย่างปลอดภัย เครื่องมือเหล่านี้ช่วยให้คุณควบคุมการเข้าถึงคีย์และเพิ่มความปลอดภัยของข้อมูลโดยรวมได้ หากเกิดเหตุข้อมูลรั่วไหลในแอปพลิเคชันของคุณ คีย์จะไม่รั่วไหลไปด้วย เพราะคีย์ถูกเข้ารหัสและจัดการอยู่ในที่ที่แยกต่างหากโดยสิ้นเชิง
สำหรับทีมที่กำลังนำแอปพลิเคชันไปใช้งานจริง เราแนะนำให้พิจารณาใช้บริการเหล่านี้สักบริการหนึ่ง
7. ตรวจสอบการใช้งานบัญชีและเปลี่ยนคีย์เมื่อจำเป็น
กำหนดวงเงินใช้จ่ายรายเดือนสำหรับองค์กรหรือโปรเจกต์ของคุณ และเปิดใช้การบังคับใช้วงเงินอย่างเคร่งครัดเพื่อช่วยจำกัดค่าใช้จ่ายที่ไม่คาดคิดจากคีย์ที่รั่วไหล การแจ้งเตือนค่าใช้จ่ายเพียงอย่างเดียวไม่ได้หยุดการรับส่งคำขอ API การบังคับใช้วงเงินอย่างเคร่งครัดอาจปิดกั้นคำขอที่ถูกต้องได้ และค่าใช้จ่ายอาจเกินวงเงินเล็กน้อย เนื่องจากการบังคับใช้ไม่ได้มีผลทันที
คีย์ API ที่รั่วไหลทำให้ผู้อื่นเข้ามาใช้โควตาในบัญชีของคุณได้โดยไม่ได้รับความยินยอมจากคุณ ซึ่งอาจทำให้ข้อมูลสูญหาย เกิดค่าใช้จ่ายที่ไม่คาดคิด โควตารายเดือนหมด และการเข้าถึง API ของคุณหยุดชะงัก
คุณติดตามการใช้งานของทีมได้ที่หน้าการใช้งาน หากคุณกังวลว่าอาจมีการใช้งานในทางที่ผิด คุณสามารถดำเนินการต่อไปนี้เพื่อปกป้องบัญชีได้:
ตรวจสอบการใช้งานว่าตรงกับงานของทีมหรือไม่ สำหรับผู้ใช้ที่เป็นสมาชิกของหลายองค์กร (เช่น องค์กรของบริษัทและองค์กรส่วนตัว) ให้ตรวจสอบว่าผู้ใช้เปิดการติดตามและกำหนดองค์กรเริ่มต้นสำหรับการใช้งานและการติดตามแล้ว
หากคุณเชื่อว่าคีย์รั่วไหล ให้เปลี่ยนคีย์ทันทีจากหน้าคีย์ API สำหรับลูกค้าที่มีแอปพลิเคชันเปิดใช้งานจริงอยู่ คุณจะต้องอัปเดตค่าคีย์ในแอปพลิเคชันให้ตรงกันด้วย
ติดต่อเราผ่าน help.openai.com เพื่อให้ตรวจสอบเพิ่มเติม
8. ปกป้องการเข้าถึง API ด้วยการควบคุมเครือข่าย
การกำหนดรายการ IP ที่อนุญาตช่วยให้คุณจำกัดได้ว่าที่อยู่ IP ใดบ้างสามารถเข้าถึง OpenAI API ของคุณได้ เมื่อเปิดใช้งาน ระบบจะอนุญาตเฉพาะคำขอจากที่อยู่ IP หรือช่วง IP ที่กำหนดไว้ และปฏิเสธคำขออื่นทั้งหมด แม้จะมีคีย์ API ที่ถูกต้องก็ตาม
วิธีนี้เพิ่มการป้องกันอีกชั้น โดยทำให้มั่นใจว่า API ของคุณจะเข้าถึงได้จากโครงสร้างพื้นฐานที่เชื่อถือได้เท่านั้น เช่น เซิร์ฟเวอร์แบ็กเอนด์หรือสภาพแวดล้อมคลาวด์ของคุณ
ดูข้อมูลเพิ่มเติมได้ในบทความเรื่องการกำหนดรายการ IP ที่อนุญาตสำหรับ OpenAI API
Private Link เป็นอีกทางเลือกหนึ่งสำหรับองค์กรที่ต้องการเข้าถึงผ่านเครือข่ายส่วนตัว โดยช่วยให้เวิร์กโหลดบน Azure เชื่อมต่อกับเอนด์พอยต์ OpenAI API ระดับภูมิภาคผ่าน Azure Private Link ได้ ติดต่อตัวแทน OpenAI ที่ดูแลคุณหรือฝ่ายขายเพื่อขอสิทธิ์เข้าถึง ยังคงต้องยืนยันตัวตนเพื่อใช้ API และ Private Link ไม่สามารถใช้ร่วมกับการกำหนดรายการ IP ที่อนุญาตหรือ mutual TLS (mTLS) ได้ ดูรายละเอียดการตั้งค่าได้ในคู่มือ Private Link
