საიდუმლოებები და გარემოს ცვლადები — გასაღებების ჩატში ჩასმის გარეშე
თითქმის ყველა რეალურ აპს მინიმუმ ერთი საიდუმლო სჭირდება: გადახდის პროვაიდერის გასაღები, ელფოსტის სერვისის გასაღები, AI API-ის გასაღები. Mythex-ში ამ მნიშვნელობებს მოთხოვნაში არ ვწერთ. როცა აგენტს ერთი მათგანი სჭირდება, ჩატში საიდუმლოების მოთხოვნის ბარათს აჩვენებს, თქვენ მნიშვნელობას ბარათის ველებში ჩაწერთ და ის პროექტის საიდუმლოებად შეინახება, რომელსაც თქვენი აპი კითხულობს — გასაღები საუბარში არ ხვდება.
რას აკეთებს
Mythex-ის ყველა პროექტს შეუძლია შეინახოს გარემოს ცვლადები: დასახელებული მნიშვნელობები, მაგალითად STRIPE_SECRET_KEY, რომლებსაც აპი გაშვებისას კითხულობს და არა კოდში წერია. საიდუმლოება არის გარემოს ცვლადი, რომლის მნიშვნელობაც კონფიდენციალური უნდა დარჩეს.
იგივე მნიშვნელობები ორ ადგილას არის ხელმისაწვდომი:
- სანდბოქსში, სადაც აგენტი თქვენი აპს აგებს და უშვებს, სანამ თქვენ მუშაობთ.
- გამოქვეყნებულ დეპლოიმენტებში, სადაც ვიზიტორები აპს იყენებენ.
მათ დასამატებლად სამი გზა არსებობს:
- საიდუმლოების მოთხოვნის ბარათი, რომელსაც აგენტი ჩატში აჩვენებს, როცა რაიმეს დასრულებისთვის გასაღები სჭირდება.
- პროექტის პარამეტრები → საიდუმლოებები, სადაც მნიშვნელობებს ნებისმიერ დროს ამატებთ ან არედაქტირებთ.
/secretsჩატში, საიდუმლოებების დასამატებლად ან განახლებისთვის მოთხოვნის შემთხვევაში.
რატომ არის ეს სასარგებლო
AI აგენტისთვის გასაღების მიცემის ყველაზე აშკარა გზა მისი თქვენს შეტყობინებაში ჩასმაა. ეს მუშაობს, მაგრამ მაშინ გასაღები ჩატის ისტორიაში ხვდება, უწესრიგოდ ჩაწერილ ტექსტად, იმ ყველაფერთან ერთად, რაც თქვით.
საიდუმლოების ბარათი მნიშვნელობას ტრანსკრიპტს გარეთ ტოვებს. მას ბარათის ველებში შეიყვანთ და არა შეტყობინების ველში, და ის პროექტის საიდუმლოებად ინახება. აგენტი აგრძელებს მუშაობას, გასაღები კი სანდბოქსში ხელმისაწვდომია.
გასაღებების პროექტის პარამეტრებში შენახვას, კოდში ჩაწერის ნაცვლად, სხვა უპირატესობებიც აქვს:
- გასაღებები წყაროს კოდის მართვის გარეთ რჩება. თქვენი კოდი გასაღებს სახელით უთითებს, მნიშვნელობა კი პროექტის პარამეტრებში ინახება.
- აგენტსა და თქვენს გაშვებულ აპს ერთი და იგივე კონფიგურაცია აქვთ. არ არსებობს ასლი, რომელიც დროთა განმავლობაში მოძველდება.
- გასაღების შეცვლა კოდის გადაწერის გარეშე შეიძლება. შეცვალეთ მნიშვნელობა პარამეტრებში; კოდი მას კვლავ სახელით კითხულობს.
თუ გარემოს ცვლადები თქვენთვის ახალია, ჩვენი გზამკვლევი რა არის გარემოს ცვლადები და საიდუმლოებები იდეას თავიდან ხსნის.
როგორ გამოვიყენოთ საიდუმლოების ბარათი
- მოითხოვეთ ფუნქცია — მაგალითად, „გაუგზავნე მისალმების წერილი, როცა ვინმე დარეგისტრირდება“.
- როცა აგენტს გასაღები დასჭირდება, ჩატში გამოჩნდება საიდუმლოების მოთხოვნის ბარათი, სადაც ჩამოთვლილია საჭირო მნიშვნელობა.
- მნიშვნელობა შეიყვანეთ ბარათის ველებში, შეტყობინების ველში კი არა.
- დაადასტურეთ. მნიშვნელობა პროექტის საიდუმლოებად შეინახება.
- აგენტი აგრძელებს მუშაობას, გასაღები კი სანდბოქსში ხელმისაწვდომია.
როგორ დავამატოთ საიდუმლოებები თავად
- გახსენით პროექტის პარამეტრები, შემდეგ საიდუმლოებები.
- დაამატეთ გასაღებები, მაგალითად
STRIPE_SECRET_KEY,OPENAI_API_KEYან თქვენი სერვისის საკუთარი მონაცემები. - სთხოვეთ აგენტს, წაიკითხოს ისინი თქვენი ჩარჩოსთვის სტანდარტული გზით — მაგალითად, Node აპში
process.env-იდან. - გამოაქვეყნეთ თავიდან, თუ გამოქვეყნებულ აპს ახალი მნიშვნელობები სჭირდება.
ჩატში /secrets-ის აკრეფითაც შეგიძლიათ მათი დამატება ან განახლება.
გამოქვეყნებულ აპში საიდუმლოების შეცვლა
გამოქვეყნებული აპი საიდუმლოებებს გამოქვეყნებისას იღებს. ერთის დამატების ან შეცვლის შემდეგ თავიდან გამოაქვეყნეთ, რომ ცოცხალმა დეპლოიმენტმა ახალი მნიშვნელობა მიიღოს. სანამ ეს არ მოხდება, ვიზიტორები აპს ძველი კონფიგურაციით იყენებენ.
უსაფრთხოების რჩევები
- არასდროს ჩაიდოთ საიდუმლოებები რეპოზიტორიში. ისინი პროექტის პარამეტრებში შეინახეთ.
- პრივილეგირებული ოპერაციებისთვის სერვერული გასაღებები გამოიყენეთ. გასაღები, რომელსაც შეუძლია ბარათების ჩამოჭრა ან ელფოსტის გაგზავნა, კოდში უნდა იყოს, რომელიც სერვერზე მუშაობს, და არა იმაში, რაც ვიზიტორის ბრაუზერში ჩამოიტვირთება.
- თუ გასაღები ოდესმე ჩატის ისტორიაში მოხვდა, შეცვალეთ იგი. შექმენით ახალი გასაღები პროვაიდერთან, გააუქმეთ ძველი და განაახლეთ მნიშვნელობა პროექტის პარამეტრებში. ნებისმიერი გასაღები, რომელიც ჩატში ჩაიწერა, კომპრომეტირებულად ჩათვალეთ.
შეზღუდვები
- ბარათი მხოლოდ მაშინ გეხმარებათ, თუ მას იყენებთ. თუ გასაღებს მაინც შეტყობინების ველში ჩასვამთ, ის ტრანსკრიპტში მოხვდება. შეცვალეთ იგი პროვაიდერთან და განაახლეთ შენახული მნიშვნელობა.
- გამოქვეყნებულ აპებს ახალი ან შეცვლილი საიდუმლოებების ასაღებად თავიდან გამოქვეყნება სჭირდება.
- საიდუმლოს უსაფრთხოდ შენახვა არ ნიშნავს, რომ მისი ყოველი გამოყენება უსაფრთხოა. მნიშვნელობა, სადაც გასაღები გამოიყენება, მაინც მნიშვნელოვანია — პრივილეგირებული გასაღებები აპის სერვერულ მხარეს შეინახეთ.
მეტი იმაზე, როგორ დაიცვათ აპი გაზიარებამდე, იხილეთ ჩვენი უსაფრთხოების ჩამონათვალი AI-ით აგებული აპებისთვის.
დეტალები დოკუმენტაციაშია: გარემოს ცვლადები და საიდუმლოებები და საიდუმლოებები ჩატში.