OpenAI Mutual TLS ორგანიზაციებს საშუალებას აძლევს, თავიანთი OpenAI API ტრაფიკისთვის უსაფრთხოების დამატებითი შრე დააკონფიგურირონ. კონფიგურაციის შემდეგ API მოთხოვნები უნდა გაიგზავნოს https://mtls.api.openai.com-ზე (ან https://mtls-eu.api.openai.com-ზე EU მონაცემთა ადგილმდებარეობის მომხმარებლებისთვის) და ტრაფიკი მიიღება მხოლოდ მაშინ, თუ მოწოდებულია სწორი API გასაღები და კლიენტის სერტიფიკატი. mTLS არ ვრცელდება https://platform.openai.com საინფორმაციო დაფაზე. ეს ფუნქცია ამჟამად ბეტა რეჟიმშია.
როგორ დავაყენო mTLS ინტეგრაცია?
პარამეტრების სანავიგაციო ზოლში დაინახავთ „Mutual TLS“ ჩანართს.
სერტიფიკატის ატვირთვა
სერტიფიკატის გააქტიურება
სერტიფიკატის ატვირთვის შემდეგ შემდეგი ნაბიჯია თქვენი სერტიფიკატის გააქტიურება. როგორც კი სერტიფიკატი პროექტისთვის გააქტიურდება, ამ პროექტისკენ მიმავალი ყველა API მოთხოვნა შესაბამის კლიენტის სერტიფიკატსაც მოითხოვს. თუ პროექტს რამდენიმე სერტიფიკატი აქვს გააქტიურებული, შეგიძლიათ ნებისმიერი შესაბამისი კლიენტის სერტიფიკატი გადასცეთ. თუ სერტიფიკატი ორგანიზაციისთვის არის გააქტიურებული, ის გავრცელდება API-ის ყველა მოთხოვნაზე და ყველა პროექტი მას „მემკვიდრეობით“ მიიღებს.
CA სერტიფიკატის მოთხოვნები
შეგიძლიათ ატვირთოთ PEM ფორმატის ნებისმიერი X.509 CA სერტიფიკატი, რომელიც შემდეგ მოთხოვნებს აკმაყოფილებს:
პირდაპირ აწერს ხელს კლიენტის სერტიფიკატებს, რომელთა გამოყენებასაც გეგმავთ, ან არის თქვენი კლიენტის მიერ წარდგენილი მოქმედი სერტიფიკატების ჯაჭვის საყრდენი.
აქვს Certificate Authority, Subject Key Identifier და Authority Key Identifier გაფართოებები (KeyIdentifier ფორმატში)
აქვს Key Usage: „Certificate Sign, CRL Sign“ ნებართვები
არ ეწურება ვადა 1 დღის განმავლობაში
სერტიფიკატის საერთო ზომა 16 კბ-ზე ნაკლები უნდა იყოს.
კლიენტის სერტიფიკატის მოთხოვნები
თუ თქვენი ორგანიზაციისთვის ჩართულია სერტიფიკატების ჯაჭვის მხარდაჭერა, კლიენტს შეუძლია წარადგინოს საბოლოო კლიენტის სერტიფიკატი და შუალედური სერტიფიკატ(ებ)ი, რომლებიც საჭიროა აქტიურ ატვირთულ სერტიფიკატამდე მოქმედი ჯაჭვის შესაქმნელად. წინააღმდეგ შემთხვევაში, კლიენტის სერტიფიკატები უშუალოდ უნდა იყოს ხელმოწერილი თქვენ მიერ წინასწარ ატვირთული სერტიფიკატებით. გარდა ამისა, კლიენტის სერტიფიკატები უნდა აკმაყოფილებდეს შემდეგ მოთხოვნებს:
უნდა ჰქონდეს სუბიექტის გასაღების იდენტიფიკატორის და სერტიფიკაციის ორგანოს გასაღების იდენტიფიკატორის გაფართოებები (KeyIdentifier ფორმატში)
უნდა ჰქონდეს გასაღების გამოყენების შემდეგი ნებართვები: „ციფრული ხელმოწერა, გასაღების დაშიფვრა“
უნდა ჰქონდეს გასაღების გაფართოებული გამოყენების ნებართვა: „TLS ვებკლიენტის ავთენტიფიკაცია“
უნდა ჰქონდეს სუბიექტის ალტერნატიული სახელის გაფართოება
სერტიფიკატების ჯაჭვის მხარდაჭერა API-ის mTLS-ისთვის
სერტიფიკატების ჯაჭვის მხარდაჭერა კლიენტს საშუალებას აძლევს, წარადგინოს საბოლოო კლიენტის სერტიფიკატი იმ შუალედურ სერტიფიკატ(ებ)თან ერთად, რომლებიც საჭიროა აქტიურ ატვირთულ სერტიფიკატამდე მოქმედი ჯაჭვის შესაქმნელად.
ეს საშუალებას გაძლევთ, შეცვალოთ შუალედური სერტიფიკატები ყოველი ახლის ატვირთვის გარეშე, თუ ნდობის საყრდენად გამოყენებული აქტიური ატვირთული სერტიფიკატი ძალაში რჩება.
სერტიფიკატების ჯაჭვის მხარდაჭერა ამჟამად მოთხოვნის საფუძველზეა ხელმისაწვდომი. წვდომის მოსათხოვად დაუკავშირდით თქვენი ანგარიშის დირექტორს ან გახსენით მხარდაჭერის მოთხოვნა.
კლიენტმა ყველა საჭირო შუალედური სერტიფიკატი უნდა წარადგინოს. OpenAI დაკარგულ შუალედურ სერტიფიკატებს AIA-ის მეშვეობით არ მოიპოვებს. CRL-ისა და OCSP-ის შემოწმებები კვლავ არ არის მხარდაჭერილი.
ხშირად დასმული კითხვები
შემიძლია mTLS-ის კონფიგურაცია API-ის მეშვეობით?
დიახ — მეტი ინფორმაციისთვის API Reference შეგიძლიათ იხილოთ აქ: https://platform.openai.com/docs/api-reference/.
რომელი საბოლოო წერტილები უჭერს მხარს 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-კლიენტების უმეტესობაშიც არსებობს კლიენტის სერტიფიკატების გადაცემის გზები. მაგალითები: requests Python-ში, fetch JS-ში. ჩვენი ოფიციალური SDK-ებით HTTP-კლიენტის გადაფარვასაც ვუჭერთ მხარს — Python-ის მაგალითისთვის იხილეთ აქ.
როდესაც სერტიფიკატების ჯაჭვის მხარდაჭერა ჩართულია, დააკონფიგურირეთ თქვენი HTTP-კლიენტი ისე, რომ წარადგინოს საბოლოო კლიენტის სერტიფიკატი და ყველა საჭირო შუალედური სერტიფიკატი. ზუსტი კონფიგურაცია თქვენს HTTP-კლიენტზეა დამოკიდებული.
საწარმოო ტრაფიკისთვის mTLS-ის სავალდებულოდ ამოქმედებამდე დარწმუნდით, რომ HTTP-კლიენტი, რომელსაც იყენებთ, კლიენტის სერტიფიკატის მოთხოვნებთან სწორად მუშაობს (ზოგი, მაგალითად WebSockets გარკვეულ ბრაუზერებში, ასე არ მუშაობს). გაითვალისწინეთ, რომ ჩვენი სერვერი კლიენტის სერტიფიკატის მოთხოვნაში certificate_authorities სიას არ აწვდის.
ვის შეუძლია სერტიფიკატებზე წვდომა და მათი შეცვლა?
https://platform.openai.com/settings/organization/mtls საინფორმაციო დაფის UI-ის მეშვეობით ორგანიზაციის მფლობელებს შეუძლიათ სერტიფიკატებზე წვდომა და მათი შეცვლა. ნებისმიერს, ვისაც Admin API Key აქვს (https://platform.openai.com/settings/organization/admin-keys), ასევე შეუძლია სერტიფიკატებზე წვდომა/შეცვლა, თუმცა გაითვალისწინეთ — თუ Mutual TLS-ს ორგანიზაციის დონეზე გაააქტიურებთ, სერტიფიკატების მოთხოვნა ამ API მოთხოვნებზეც გავრცელდება. mTLS-ის ყველა ცვლილება აუდიტის ჟურნალებში ჩანს.
რამდენი სერტიფიკატი შეიძლება მქონდეს?
თითოეულ ორგანიზაციას შეუძლია 50-მდე სერტიფიკატის ატვირთვა, რომელთა გაზიარებაც შესაძლებელია პროექტებს შორის, მაგრამ არა სხვა ორგანიზაციებთან. შეგიძლიათ სერტიფიკატი ერთ ოპერაციაში გაააქტიუროთ/გამორთოთ ერთდროულად 10 პროექტისთვის. ალტერნატიულად, შეგიძლიათ ერთდროულად 10 სერტიფიკატი გაააქტიუროთ/გამორთოთ თქვენი ორგანიზაციისთვის ან 1 კონკრეტული პროექტისთვის.
შემიძლია სერტიფიკატების განახლება ან წაშლა?
შეგიძლიათ განაახლოთ თქვენი სერტიფიკატების სახელები, მაგრამ არა მათი შიგთავსი. ასევე შეგიძლიათ წაშალოთ სერტიფიკატები, თუ ისინი ამჟამად არც ერთ დონეზე არ არის აქტიური.
როგორ მუშაობს სერტიფიკატის გაუქმება?
ამჟამად CRL ან OCSP შემოწმებებს არ ვუჭერთ მხარს. რეკომენდებული ალტერნატივაა API-გასაღების წაშლა ან როტაცია. ასევე შეგიძლიათ შეცვალოთ თქვენი CA სერტიფიკატები ან გამოიყენოთ კლიენტის სერტიფიკატები უფრო მოკლე მოქმედების ვადით.
შემიძლია უფრო გრძელი სერტიფიკატების ჯაჭვების გამოყენება?
დიახ, თუ თქვენი ორგანიზაციისთვის სერტიფიკატების ჯაჭვის მხარდაჭერა ჩართულია. თქვენმა კლიენტმა უნდა წარადგინოს საბოლოო კლიენტის სერტიფიკატი და ნებისმიერი საჭირო შუალედური სერტიფიკატი, რათა OpenAI-მ შეძლოს ჯაჭვის გადამოწმება აქტიურ ატვირთულ სერტიფიკატამდე. წვდომის მოსათხოვად დაუკავშირდით თქვენს Account Director-ს ან გახსენით მხარდაჭერის ტიკეტი.
რა არის რეკომენდებული დაყენება?
ამ ფუნქციის თავდაპირველი დაყენებისას გირჩევთ დაიწყოთ staging პროექტით, რომელიც ოფიციალურ საწარმოო ტრაფიკს არ ემსახურება. გამოიყენეთ ეს შესაძლებლობა, რათა დარწმუნდეთ, რომ თქვენი სერტიფიკატები სწორად არის დაყენებული თქვენს კომპიუტერებზე და API ტრაფიკის წარმატებით გაგზავნა შეგიძლიათ. ამის გარდა, გირჩევთ კონსულტაცია გაიაროთ თქვენი ორგანიზაციის უსაფრთხოების გუნდთან, რათა უკეთ გაიგოთ თქვენი საჭიროებები.
დამატებითი მხარდაჭერა
mTLS ფუნქციის სრულად თვითმომსახურებით გამოყენება შეგიძლიათ საინფორმაციო დაფისა და API-ის მეშვეობით. თუმცა, თუ თავდაპირველად mTLS-ის ჩართვა shadow რეჟიმში გსურთ, დაუკავშირდით თქვენს Account Director-ს ან გახსენით მხარდაჭერის მოთხოვნა ამ გვერდის ქვედა მარჯვენა კუთხეში ახალი ჩატის დაწყებით.
დანართი: ტერმინოლოგია
CA სერტიფიკატი: თქვენი სანდო სერტიფიკატებიდან ერთ-ერთი, რომელიც კლიენტის სერტიფიკატების გადასამოწმებლად გამოიყენება. მას შეუძლია პირდაპირ მოაწეროს ხელი კლიენტის სერტიფიკატებს, რომლებსაც მოთხოვნებთან ერთად აგზავნით, ან იყოს თქვენი კლიენტის მიერ წარდგენილი სერტიფიკატების ჯაჭვის საყრდენი. შეგიძლიათ გამოიყენოთ თვითხელმოწერილი CA სერტიფიკატები.
სერტიფიკატის ატვირთვა: CA სერტიფიკატის დამატება თქვენს ანგარიშზე. ის ჯერ არსად არ ამოქმედდება mTLS-ისთვის, მაგრამ შეგიძლიათ მისი კონფიგურაციის დაწყება.
არეალი: კონკრეტული პროექტი ან მთელი თქვენი ორგანიზაცია.
CA სერტიფიკატის გააქტიურება არეალში: რთავს mTLS-ს კონკრეტულად ამ არეალისთვის და API-გასაღებზე დაფუძნებული ყველა მოთხოვნა უნდა შეიცავდეს კლიენტის სერტიფიკატს, რომლის გადამოწმებაც აქტიურ CA სერტიფიკატთან შესაძლებელია.
CA სერტიფიკატის დეაქტივაცია არეალში: თიშავს ამ სერტიფიკატის გამოყენებას ამ არეალში მოთხოვნების გადასამოწმებლად. თუ ამ არეალისთვის სერტიფიკატები აღარ გაქვთ, mTLS ფაქტობრივად გამორთულია.
სერტიფიკატის მემკვიდრეობით მიღება: თუ სერტიფიკატს თქვენი ორგანიზაციისთვის გაააქტიურებთ, ის ყველა პროექტისთვისაც გააქტიურდება.
