पाठ 19 / 25

Secrets और निजी कोड

Credentials और संवेदनशील डेटा को prompts से बाहर रखें और data-handling नीतियाँ समझें।

मानें कि prompts बाहर भेजी जाती हैं

ज़्यादातर assistants आपकी prompt और चुना हुआ कोड किसी remote service को भेजते हैं। Passwords, API keys, tokens, private keys, ग्राहक डेटा या व्यक्तिगत जानकारी कभी paste न करें। अपने tool की data नीति देखें: क्या आपका कोड models को train करने में उपयोग होता है, कितने समय रखा जाता है, और क्या आपका नियोक्ता इस project के लिए इस tool की अनुमति देता है? Secrets को environment variables या secrets manager में रखें, और .env जैसी files को tool के पढ़ने से बाहर रखें।

क्या अंदर जाता है, क्या बाहर आता है

आपकी prompts आपकी मशीन से बाहर जा सकती हैं, और जो कोड आप स्वीकारते हैं उसके क़ानूनी व सुरक्षा परिणाम होते हैं।

तीन चौकियाँ: input, output, परिवेश।
चित्र 6.1 — Input, output और परिवेश।

Paste से पहले त्वरित secret जाँच

मैंने यह regex जाँच चलाई: यह AWS access key ID जैसा दिखने वाला text चिह्नित करती है और सामान्य text को अनदेखा करती है। gitleaks जैसे समर्पित tools कहीं ज़्यादा गहन हैं; इसे उदाहरण मानें।

import re
pat = re.compile(r"AKIA[0-9A-Z]{16}")
print(bool(pat.search("key = 'AKIAABCDEFGHIJKLMNOP'")),
      bool(pat.search("key = 'hello'")))

Output:

True False

Secret paste हो गया तो बदल दें

जो भी secret prompt में गया उसे उजागर मानें। उसे तुरंत रद्द करें या बदलें; chat हटाने से यह नहीं पलटता कि वह कहाँ log हुआ हो सकता है।

त्वरित जाँच: आपने assistant chat में API key paste कर दी। सही प्रतिक्रिया क्या है?

  • Chat हटाकर उम्मीद रखें
  • जाँच के लिए दोबारा paste करें
  • कुछ न करें
  • Key बदलें या रद्द करें
Answer

Key बदलें या रद्द करें — एक बार भेजने के बाद पता नहीं कि वह कहाँ रखा गया, इसलिए key बदलनी होगी।