Codex-ის უსაფრთხოდ გაშვება OpenAI-ში
მიმოხილვა იმ კონტროლის მექანიზმების, საზღვრებისა და ტელემეტრიისა, რომლებსაც OpenAI იყენებს რეალურ სამუშაო პროცესებში კოდირების აგენტების მართვისთვის.
ხელოვნური ინტელექტის სისტემების შესაძლებლობების ზრდასთან ერთად, ისინი სულ უფრო მეტად მოქმედებენ მომხმარებლების სახელით. პროგრამირების აგენტებს შეუძლიათ ავტონომიურად განიხილონ რეპოზიტორიუმები, შეასრულონ ბრძანებები და ჰქონდეთ ურთიერთქმედება განვითარების ინსტრუმენტებთან. ეს ამოცანები ადრე ადამიანის მიერ უშუალო შესრულებას მოითხოვდა.
Codex-ში ჩვენ ეს შესაძლებლობები შევიმუშავეთ იმ კონტროლის მექანიზმებთან ერთად, რომლებიც ორგანიზაციებს უსაფრთხო დანერგვისთვის სჭირდებათ. უსაფრთხოების გუნდებს სჭირდებათ აგენტების მუშაობის მართვის გზები: რაზე აქვთ წვდომა, როდის არის საჭირო ადამიანის დასტური, რომელ სისტემებთან შეუძლიათ ურთიერთქმედება და რა სახის ტელემეტრია არსებობს მათი ქცევის ასახსნელად.
OpenAI-ში Codex-ს რამდენიმე მკაფიო მიზნისთვის ვნერგავთ: აგენტი მკაფიო ტექნიკურ საზღვრებში შევინარჩუნოთ, დეველოპერებს დაბალი რისკის ქმედებების სწრაფად შესრულების საშუალება მივცეთ და მაღალი რისკის ქმედებები მკაფიოდ გამოვყოთ. ჩვენ ასევე ვინარჩუნებთ აგენტის ნატიურ ტელემეტრიას, რათა გავიგოთ და შევამოწმოთ, თუ რა გააკეთა აგენტმა. პრაქტიკაში ეს ნიშნავს მართვად კონფიგურაციას, შეზღუდულ გარემოში შესრულებას, ქსელის პოლიტიკებს და აგენტისთვის მორგებულ ჟურნალებს.
Codex-ს ვნერგავთ მარტივი პრინციპით: ის უნდა იყოს პროდუქტიული შეზღუდულ გარემოში; დაბალი რისკის ყოველდღიური მოქმედებები უნდა სრულდებოდეს შეუფერხებლად, ხოლო უფრო მაღალი რისკის მოქმედებები — განხილვისთვის უნდა შეჩერდეს.
დამტკიცებები და სანდბოქსი ერთად მუშაობენ. სენდბოქსი განსაზღვრავს ტექნიკური შესრულების საზღვარს, მათ შორის: სად შეუძლია Codex-ს ჩაწერა, შეუძლია თუ არა ქსელთან წვდომა და რომელი ფაილური ბილიკები რჩება დაცული. დასტურის პოლიტიკა განსაზღვრავს, თუ როდის უნდა მოითხოვოს Codex-მა მოქმედების შესრულების ნებართვა — მაგალითად, როდესაც მას სჭირდება რაიმეს გაკეთება „სენდბოქსის“ ფარგლებს გარეთ. მომხმარებლებს შეუძლიათ მოქმედების ერთჯერადად დადასტურება, ან მოცემული სესიის განმავლობაში ამ ტიპის ყველა მოქმედებაზე თანხმობის მიცემა.
იმ მოთხოვნებისთვის, რომლებიც სენდბოქსის საზღვარს კვეთს, ვიყენებთ ავტომატური გადახედვის რეჟიმს(იხსნება ახალ ფანჯარაში) — ესაა ფუნქცია, რომლის ჩართვის შემთხვევაში გარკვეული ტიპის მოთხოვნები ავტომატურად მტკიცდება, რომ შემცირდეს შემთხვევები, როცა მომხმარებლებს უწევთ შეჩერება და Codex-ის მოქმედებების დამტკიცება. Codex-ი დაგეგმილ მოქმედებასა და ბოლოდროინდელ კონტექსტს უგზავნის ავტომატური დამტკიცების ქვეაგენტს, რომელსაც შეუძლია, ავტომატურად დაამტკიცოს დაბალრისკიანი მოქმედებები (ან მაღალრისკიანი მოქმედებები, თუ მომხმარებლის ავტორიზაციის საკმარისი დონე არსებობს) ისე, რომ მომხმარებელს ხელი არ შეუშალოს. ეს Codex-ს საშუალებას აძლევს, უწყვეტად იმუშაოს რუტინულ დავალებებზე, თუმცა მაინც ჩერდება მაღალრისკიანი მოქმედებების ან ისეთი ოპერაციების შესრულებისას, რომლებსაც გაუთვალისწინებელი შედეგები შეიძლება მოჰყვეს.
ჩვენ Codex-ს შეუზღუდავი გამავალი ქსელური წვდომით არ ვუშვებთ. ჩვენი მართვადი ქსელური პოლიტიკა ნებას რთავს წვდომას მოსალოდნელ მისამართებზე, ბლოკავს იმ მიმართულებებს, რომლებთანაც არ გვსურს Codex-ის დაკავშირება და მოითხოვს დადასტურებას უცხო დომენების შემთხვევაში. ეს Codex-ს საშუალებას აძლევს, შეასრულოს გავრცელებული, აპრობირებული სამუშაო პროცესები ისე, რომ მას ფართო ქსელური წვდომა არ მიენიჭოს.
ჩვენ ასევე ვმართავთ Codex-ის ავთენტიფიკაციის პროცესს. CLI-სა და MCP-ის OAuth ავტორიზაციის მონაცემები ინახება ოპერაციული სისტემის უსაფრთხო გასაღებების საცავში, შესვლა სავალდებულოდ ChatGPT‑ის მეშვეობით ხდება, ხოლო წვდომა მიბმულია ჩვენს ChatGPT Enterprise-ის სამუშაო სივრცეზე. ეს უზრუნველყოფს Codex-ის გამოყენების დაკავშირებას ჩვენი სამუშაო სივრცის დონის კონტროლის მექანიზმებთან და Codex-ის აქტივობას ხელმისაწვდომს ხდის ChatGPT‑ის შესაბამისობის ჟურნალების პლატფორმაზე ჩვენი კორპორაციული სამუშაო სივრცისთვის.
ჩვენ ვიყენებთ წესებს, რათა Codex-მა ყველა Shell-ბრძანება თანაბრად უსაფრთხოდ არ მიიჩნიოს. გავრცელებული, უვნებელი ბრძანებები, რომლებსაც ინჟინრები ყოველდღიურ განვითარებაში იყენებენ, სენდბოქსის გარეთ დამტკიცების გარეშე ნებადართულია, ხოლო კონკრეტული საშიში ბრძანებები შეიძლება დაიბლოკოს ან დამტკიცებას საჭიროებდეს. ეს Codex-ს საშუალებას აძლევს, სწრაფად გაუმკლავდეს ჩვეულებრივ საინჟინრო ამოცანებს, და ამავდროულად მაინც მოითხოვოს განხილვა ან დაბლოკოს ისეთი შაბლონები, რომელთა სენდბოქსის გარეთ გაშვება არ გვსურს.
ამ მიდგომას ვახორციელებთ ღრუბლიდან მართული მოთხოვნების, macOS-ის მართული პრეფერენციებისა და ლოკალური მოთხოვნების ფაილების კომბინაციით. მოთხოვნები არის ადმინისტრატორის მიერ დაწესებული კონტროლის მექანიზმები, რომელთა შეცვლა მომხმარებლებს არ შეუძლიათ. macOS-ის მართვადი პრეფერენციები და ლოკალური მოთხოვნების ფაილები საშუალებას გვაძლევს, შევინარჩუნოთ თანმიმდევრული საბაზისო კონფიგურაცია და ამავდროულად გამოვცადოთ სხვადასხვა კონფიგურაცია გუნდის, მომხმარებელთა ჯგუფის ან გარემოს მიხედვით. ეს კონფიგურაციები გამოიყენება Codex-ის ყველა ლოკალურ ინტერფეისზე, მათ შორის დესკტოპ აპლიკაციაში, CLI-სა და IDE-ის გაფართოებაში.
კონტროლი საქმის მხოლოდ ნახევარია. აგენტების განთავსების შემდეგ, უსაფრთხოების გუნდებს სჭირდებათ ხილვადობა იმის შესახებ, თუ რას აკეთებენ ეს აგენტები და რატომ. ტრადიციული უსაფრთხოების ჟურნალებიი კვლავ სასარგებლოა Codex-ის მიერ შესრულებული ქმედებების განხილვისას, მაგრამ ისინი ძირითადად პასუხობენ კითხვას, რა მოხდა: პროცესი დაიწყო, ფაილი შეიცვალა, ქსელური კავშირის დამყარების მცდელობა განხორციელდა. დამცველებს კვლავ თავად უწევთ იმის გარკვევა, რატომ გააკეთა Codex-მა რაღაც, ან რა იყო მომხმარებლის განზრახვა.
Codex-ს შეუძლია უსაფრთხოების გუნდებს აგენტების შესახებ უფრო ინფორმირებული ხედვა მისცეს. Codex-ს აქვს OpenTelemetry-ის ჟურნალების ექსპორტის მხარდაჭერა, Codex-ის სხვადასხვა მოვლენებისთვის, როგორიცაა მომხმარებლის მოთხოვნები, ინსტრუმენტის დამტკიცების გადაწყვეტილებები, ინსტრუმენტის შესრულების შედეგები, MCP სერვერის გამოყენება და ქსელის პროქსის დაშვების ან უარყოფის მოვლენები. Codex-ის აქტივობის ჟურნალები ასევე ხელმისაწვდომია OpenAI-ის შესაბამისობის პლატფორმის მეშვეობით Enterprise და Edu კატეგორიის მომხმარებლებისთვის.
OpenAI-ში Codex-ის ჟურნალებს ვიყენებთ ჩვენს AI-ზე დაფუძნებულ უსაფრთხოების ტრიაჟის აგენტთან ერთად. როდესაც საბოლოო წერტილის გაფრთხილება ამბობს, რომ Codex-მა რაღაც უჩვეულო გააკეთა, საბოლოო წერტილის უსაფრთხოების ინსტრუმენტი გვატყობინებს, რომ საეჭვო მოვლენა მოხდა. შემდეგ Codex-ის ჟურნალები მომხმარებლისა და აგენტის კონტექსტური განზრახვის ახსნაში გვეხმარება. ჩვენი AI უსაფრთხოების ტრიაჟის აგენტი იყენებს Codex-ის ჟურნალებს თავდაპირველი მოთხოვნის, ინსტრუმენტების აქტივობის, დამტკიცების გადაწყვეტილებების, ინსტრუმენტების შედეგებისა და ქსელის პოლიტიკის ნებისმიერი შესაბამისი გადაწყვეტილების ან დაბლოკვის შესამოწმებლად. AI უსაფრთხოების ტრიაჟის აგენტი თავის ანალიზს წარუდგენს ჩვენს უსაფრთხოების გუნდს განსახილველად, რათა ერთმანეთისგან განასხვაონ აგენტის მოსალოდნელი ქცევა, უსაფრთხო შეცდომები და ისეთი აქტივობა, რომელიც ნამდვილად საჭიროებს რეაგირებას.
ჩვენ ასევე ვიყენებთ იმავე ტელემეტრიას საოპერაციო მიზნებისთვის. ჩვენ ვიყენებთ ამ ჟურნალებს იმისთვის, რომ გავიგოთ, როგორ იცვლება შიდა დანერგვის პროცესი, რომელი ინსტრუმენტები და MCP სერვერები გამოიყენება, რამდენად ხშირად ბლოკავს ან ითხოვს დასტურს ქსელური „სენდბოქსი“ და სად საჭიროებს დახვეწას სისტემის დანერგვის პროცესი. ამ OpenTelemetry-ის ჟურნალების ცენტრალიზება შესაძლებელია SIEM და შესაბამისობის აღრიცხვის სისტემებში.
იმ დროს, როცა შემუშავების სამუშაო პროცესებში ინტეგრირდება კოდის წერის ისეთი აგენტები, როგორიცაა Codex-ი, უსაფრთხოების გუნდებს სჭირდებათ ხელსაწყოები, რომლებიც სპეციალურად ამ გადასვლის სამართავად არის შექმნილი. Codex-ი უზრუნველყოფს უსაფრთხო დანერგვისთვის საჭირო მართვის ინტერფეისებს, კონფიგურაციის მართვას, სენდბოქსში იზოლაციასა და დეტალურ, აგენტზე ორიენტირებულ ტელემეტრიას. ამ შესაძლებლობების არსებობა უსაფრთხოების გუნდებს საშუალებას აძლევს, უფრო მეტი თავდაჯერებით დანერგონ Codex-ი, რაც უზრუნველყოფს ბალანსს დეველოპერების პროდუქტიულობასა და კორპორაციული უსაფრთხოებისთვის აუცილებელ კონტროლსა და გამჭვირვალობას შორის. Codex-ის კონფიგურაციის შესახებ მეტი ინფორმაცია ხელმისაწვდომია აქ(იხსნება ახალ ფანჯარაში), ხოლო შესაბამისობის API-ს შესახებ — აქ(იხსნება ახალ ფანჯარაში).


