രഹസ്യങ്ങളും എൻവയോൺമെന്റ് വേരിയബിളുകളും, ചാറ്റിൽ കീകൾ ഒട്ടിക്കാതെ
മിക്ക യഥാർത്ഥ ആപ്പുകൾക്കും കുറഞ്ഞത് ഒരു രഹസ്യമെങ്കിലും വേണം: ഒരു പേയ്മെന്റ് ദാതാവിന്റെ കീ, ഒരു ഇമെയിൽ സേവനത്തിന്റെ കീ, ഒരു AI API-യുടെ കീ. Mythex-ൽ അവയൊന്നും ഒരു പ്രോംപ്റ്റിൽ ഒട്ടിക്കേണ്ടതില്ല. ഏജന്റിന് ഒന്ന് ആവശ്യമായി വരുമ്പോൾ, ചാറ്റിൽ ഒരു secrets request കാർഡ് കാണിക്കുന്നു, നിങ്ങൾ കാർഡിൽ മൂല്യം ടൈപ്പ് ചെയ്യുന്നു, അത് നിങ്ങളുടെ ആപ്പിന് വായിക്കാനാകുന്ന ഒരു പ്രോജക്റ്റ് രഹസ്യമായി സേവ് ചെയ്യപ്പെടുന്നു — കീ സംഭാഷണത്തിൽ എത്താതെ.
ഇതെന്താണ് ചെയ്യുന്നത്
ഓരോ Mythex പ്രോജക്റ്റിനും എൻവയോൺമെന്റ് വേരിയബിളുകൾ സൂക്ഷിക്കാം: STRIPE_SECRET_KEY പോലെയുള്ള പേരുള്ള മൂല്യങ്ങൾ, കോഡിൽ എഴുതുന്നതിന് പകരം ആപ്പ് പ്രവർത്തിക്കുമ്പോൾ വായിക്കുന്നവ. രഹസ്യങ്ങൾ എന്നത് മൂല്യങ്ങൾ സ്വകാര്യമായി നിലനിൽക്കേണ്ട എൻവയോൺമെന്റ് വേരിയബിളുകളാണ്.
ഒരേ മൂല്യങ്ങൾ രണ്ട് സ്ഥലങ്ങളിൽ ലഭ്യമാണ്:
- സാൻഡ്ബോക്സ്, നിങ്ങൾ പ്രവർത്തിക്കുമ്പോൾ ഏജന്റ് നിങ്ങളുടെ ആപ്പ് build ചെയ്യുകയും പ്രവർത്തിപ്പിക്കുകയും ചെയ്യുന്നിടത്ത്.
- നിങ്ങളുടെ പ്രസിദ്ധീകരിച്ച deployments, സന്ദർശകർ ആപ്പ് ഉപയോഗിക്കുന്നിടത്ത്.
അവ ചേർക്കാൻ മൂന്ന് വഴികളുണ്ട്:
- Secrets request കാർഡ്, ഒരു കാര്യം പൂർത്തിയാക്കാൻ ഒരു കീ ആവശ്യമാകുമ്പോൾ ഏജന്റ് ചാറ്റിൽ കാണിക്കുന്നത്.
- Project settings → Secrets, എപ്പോൾ വേണമെങ്കിലും മൂല്യങ്ങൾ ചേർക്കാനോ എഡിറ്റ് ചെയ്യാനോ കഴിയുന്നിടത്ത്.
- ചാറ്റിൽ
/secrets, അഭ്യർത്ഥന പ്രകാരം രഹസ്യങ്ങൾ ചേർക്കാനോ അപ്ഡേറ്റ് ചെയ്യാനോ.
ഇത് എന്തുകൊണ്ട് സഹായിക്കുന്നു
ഒരു AI ഏജന്റിന് ഒരു കീ നൽകാനുള്ള സ്പഷ്ടമായ വഴി അത് നിങ്ങളുടെ സന്ദേശത്തിൽ ഒട്ടിക്കുക എന്നതാണ്. അത് പ്രവർത്തിക്കും, പക്ഷേ അപ്പോൾ കീ നിങ്ങളുടെ ചാറ്റ് ചരിത്രത്തിന്റെ ഭാഗമാകുന്നു, നിങ്ങൾ പറഞ്ഞതെല്ലാം പോലെ സാധാരണ ടെക്സ്റ്റായി അവിടെ കിടക്കുന്നു.
Secrets കാർഡ് മൂല്യത്തെ സംഭാഷണത്തിൽ നിന്ന് പുറത്ത് നിർത്തുന്നു. മെസേജ് ബോക്സിലല്ല, കാർഡിന്റെ ഫീൽഡുകളിലാണ് നിങ്ങൾ കീ നൽകുന്നത്, അത് ഒരു പ്രോജക്റ്റ് രഹസ്യമായി സേവ് ചെയ്യപ്പെടുന്നു. കീ സാൻഡ്ബോക്സിൽ ലഭ്യമായ നിലയിൽ ഏജന്റ് തുടർന്ന് പ്രവർത്തിക്കുന്നു.
കോഡിന് പകരം പ്രോജക്റ്റ് settings-ൽ കീകൾ സൂക്ഷിക്കുന്നതിന് മറ്റ് ഗുണങ്ങളുമുണ്ട്:
- കീകൾ source control-ന് പുറത്ത് നിൽക്കുന്നു. നിങ്ങളുടെ കോഡ് ഒരു കീയെ അതിന്റെ പേരിലൂടെ സൂചിപ്പിക്കുന്നു; മൂല്യം പ്രോജക്റ്റ് settings-ലാണ്.
- ഏജന്റും നിങ്ങളുടെ പ്രവർത്തിക്കുന്ന ആപ്പും ഒരേ കോൺഫിഗറേഷൻ കാണുന്നു. പഴകി പോകുന്ന ഒരു പകർപ്പില്ല.
- കോഡ് മാറ്റാതെ തന്നെ നിങ്ങൾക്ക് ഒരു കീ മാറ്റാം. Settings-ൽ മൂല്യം മാറ്റുക; കോഡ് അതിനെ പേരനുസരിച്ച് വായിക്കുന്നത് തുടരും.
എൻവയോൺമെന്റ് വേരിയബിളുകൾ നിങ്ങൾക്ക് പുതിയതാണെങ്കിൽ, എൻവയോൺമെന്റ് വേരിയബിളുകളും രഹസ്യങ്ങളും എന്താണ് എന്ന ഞങ്ങളുടെ ഗൈഡ് ആശയം ആദ്യം മുതൽ വിശദീകരിക്കുന്നു.
Secrets കാർഡ് എങ്ങനെ ഉപയോഗിക്കാം
- ഫീച്ചർ ആവശ്യപ്പെടുക — ഉദാഹരണത്തിന്, "ആരെങ്കിലും സൈൻ അപ്പ് ചെയ്യുമ്പോൾ ഒരു സ്വാഗത ഇമെയിൽ അയയ്ക്കുക".
- ഏജന്റിന് ഒരു കീ ആവശ്യമാകുമ്പോൾ, ചാറ്റിൽ ഒരു secrets request കാർഡ് പ്രത്യക്ഷപ്പെടുന്നു, ആവശ്യമായ മൂല്യം അതിൽ പട്ടികപ്പെടുത്തുന്നു.
- കാർഡിന്റെ ഫീൽഡുകളിൽ മൂല്യം നൽകുക, മെസേജ് ബോക്സിൽ അല്ല.
- സ്ഥിരീകരിക്കുക. മൂല്യം ഒരു പ്രോജക്റ്റ് രഹസ്യമായി സേവ് ചെയ്യപ്പെടുന്നു.
- ഏജന്റ് തുടരുന്നു, കീ സാൻഡ്ബോക്സിൽ ലഭ്യമായി.
രഹസ്യങ്ങൾ സ്വയം ചേർക്കുന്നത് എങ്ങനെ
- പ്രോജക്റ്റ് settings തുറക്കുക, തുടർന്ന് Secrets.
STRIPE_SECRET_KEY,OPENAI_API_KEY, അല്ലെങ്കിൽ നിങ്ങളുടെ സ്വന്തം സേവനത്തിന്റെ credentials പോലുള്ള കീകൾ ചേർക്കുക.- നിങ്ങളുടെ ഫ്രെയിംവർക്കിന് സാധാരണ രീതിയിൽ അവ വായിക്കാൻ ഏജന്റിനോട് ആവശ്യപ്പെടുക — ഉദാഹരണത്തിന്, Node ആപ്പിൽ
process.env-ൽ നിന്ന്. - പ്രസിദ്ധീകരിച്ച ആപ്പിന് പുതിയ മൂല്യങ്ങൾ വേണമെങ്കിൽ വീണ്ടും പബ്ലിഷ് ചെയ്യുക.
ചാറ്റിൽ /secrets എന്ന് ടൈപ്പ് ചെയ്ത് അവിടെയും അവ ചേർക്കുകയോ അപ്ഡേറ്റ് ചെയ്യുകയോ ചെയ്യാം.
പ്രസിദ്ധീകരിച്ച ആപ്പിലെ രഹസ്യം മാറ്റുന്നത്
പ്രസിദ്ധീകരിച്ച ആപ്പ് പ്രസിദ്ധീകരിക്കുമ്പോഴാണ് രഹസ്യങ്ങൾ എടുക്കുന്നത്. ഒന്ന് ചേർക്കുകയോ മാറ്റുകയോ ചെയ്ത ശേഷം, തത്സമയ deployment-ന് പുതിയ മൂല്യം കിട്ടാൻ വീണ്ടും പബ്ലിഷ് ചെയ്യുക. അതുവരെ സന്ദർശകർ പഴയ configuration ഉപയോഗിച്ചാണ് ആപ്പ് ഉപയോഗിക്കുന്നത്.
സുരക്ഷാ നുറുങ്ങുകൾ
- രഹസ്യങ്ങൾ ഒരിക്കലും repository-യിൽ commit ചെയ്യരുത്. അവ പ്രോജക്റ്റ് settings-ൽ സൂക്ഷിക്കുക.
- പ്രത്യേക അവകാശമുള്ള പ്രവർത്തനങ്ങൾക്ക് സെർവർ-മാത്രം കീകൾ ഉപയോഗിക്കുക. കാർഡ് ഈടാക്കാനോ ഇമെയിൽ അയയ്ക്കാനോ കഴിയുന്ന കീ, സന്ദർശകരുടെ ബ്രൗസർ ഡൗൺലോഡ് ചെയ്യുന്ന ഒന്നിലും ആകരുത്, സെർവറിൽ പ്രവർത്തിക്കുന്ന കോഡിൽ മാത്രം വേണം.
- ഒരു കീ ഒരിക്കലെങ്കിലും ചാറ്റ് ചരിത്രത്തിൽ വന്നാൽ, അത് മാറ്റുക. ദാതാവിൽ പുതിയ കീ ഉണ്ടാക്കുക, പഴയത് റദ്ദാക്കുക, പ്രോജക്റ്റ് settings-ലെ മൂല്യം അപ്ഡേറ്റ് ചെയ്യുക. ചാറ്റിൽ ഒട്ടിച്ച ഏതൊരു കീയും പുറത്തായതായി കണക്കാക്കുക.
പരിധികൾ
- കാർഡ് സഹായിക്കണമെങ്കിൽ നിങ്ങൾ അത് ഉപയോഗിക്കണം. മെസേജ് ബോക്സിൽ കീ ഒട്ടിച്ചാൽ, അത് സംഭാഷണത്തിൽ വരും. ദാതാവിൽ അത് മാറ്റി സേവ് ചെയ്ത മൂല്യം അപ്ഡേറ്റ് ചെയ്യുക.
- പ്രസിദ്ധീകരിച്ച ആപ്പുകൾക്ക് പുതിയതോ മാറ്റിയതോ ആയ രഹസ്യങ്ങൾ എടുക്കാൻ വീണ്ടും പബ്ലിഷ് ആവശ്യമാണ്.
- ഒരു കീ സുരക്ഷിതമായി സൂക്ഷിക്കുന്നത് അത് ഉപയോഗിക്കുന്ന രീതി സുരക്ഷിതമാക്കുന്നില്ല. പ്രത്യേക അവകാശമുള്ള കീകൾ നിങ്ങളുടെ ആപ്പിന്റെ സെർവർ ഭാഗത്ത് സൂക്ഷിക്കുക.
പ്രസിദ്ധീകരണത്തിന് മുമ്പ് ആപ്പ് സുരക്ഷിതമാക്കുന്നതിനെക്കുറിച്ച്, AI നിർമ്മിച്ച ആപ്പുകൾക്കുള്ള സുരക്ഷാ ചെക്ക്ലിസ്റ്റ് കാണുക.
ഡോക്സിൽ വിശദാംശങ്ങളുണ്ട്: Environment variables and secrets, Secrets in chat.