
गिट हुक-आधारित गुप्त स्कैनर जो बाहर जाने वाले चेंजसेट में टोकन, पासवर्ड और निजी कुंजियों का पता लगाता है, संवेदनशील डेटा को रिपॉजिटरी में कमिट या पुश होने से रोकता है।
गिट रिपॉजिटरी में सीक्रेट्स (गुप्त जानकारी) की जाँच को रोकने और पहचानने का एक उपकरण
Talisman एक उपकरण है जो गिट चेंजसेट्स को स्कैन करता है ताकि यह सुनिश्चित किया जा सके कि संभावित सीक्रेट्स या संवेदनशील जानकारी डेवलपर के वर्कस्टेशन से बाहर न जाए।
यह आउटगोइंग चेंजसेट को संदिग्ध दिखने वाली चीजों के लिए मान्य करता है - जैसे संभावित SSH कुंजियाँ, प्राधिकरण टोकन, निजी कुंजियाँ आदि।
Talisman MAC OSX, Linux और Windows को समर्थन करता है।
Talisman को निम्नलिखित तरीकों में से किसी एक में स्थापित और उपयोग किया जा सकता है:
Talisman को git रिपॉजिटरी पर प्री-कमिट या प्री-पुश हुक के रूप में सेट किया जा सकता है।
नीचे दिए गए निर्देश देखें।
अस्वीकरण: git रिपॉजिटरी में फोर्स्ड पुश के माध्यम से आने वाले सीक्रेट्स को Talisman द्वारा पहचाना नहीं जा सकता। फोर्स्ड पुश को अपने तरीके से कुख्यात माना जाता है, और हम git रिपॉजिटरी प्रशासकों को सुझाव देते हैं कि वे ऐसी गतिविधियों को अधिकृत करने के लिए उचित उपाय लागू करें।
हम talisman को अपने पथ पर स्थापित करने की अनुशंसा करते हैं ताकि यह git हुक फ्रेमवर्क और स्क्रिप्ट के लिए उपलब्ध हो।
हमारे Releases Page से अपने सिस्टम के लिए सही बाइनरी चुनें, या हमारा install script चलाएँ:```bash bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
या पर्यावरण चर `INSTALL_LOCATION` सेट करें ताकि एक कस्टम स्थान निर्दिष्ट किया जा सके
बाइनरी के लिए:```bash
INSTALL_LOCATION=/usr/local/bin bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
या पर्यावरण चर VERSION को एक जारी टैग पर सेट करें ताकि एक विशिष्ट संस्करण स्थापित करें::```bash
VERSION=v1.36.0 bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
या Linux में linuxbrew और macOS में homebrew का उपयोग करके टर्मिनल में निम्नलिखित कमांड चलाकर:```bash
brew install talisman
हम ऐसी स्क्रिप्ट प्रदान करते हैं जो Talisman को प्री-कमिट git हुक टेम्पलेट के रूप में स्थापित करेंगी, क्योंकि इससे Talisman न केवल आपके मौजूदा git रिपॉजिटरी में बल्कि किसी भी नए रिपॉजिटरी में उपस्थित होगा जिसे आप 'init' या 'clone' करते हैं।
प्री-कमिट हुक के रूप में: ``` bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/global_install_scripts/install.bash)"
या
एक pre-push hook के रूप में: ```
bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/global_install_scripts/install.bash)" -- pre-push
$PATH में TALISMAN_HOME सेट नहीं किया है, तो आपसे इसे सेट करने के लिए उपयुक्त स्थान पूछा जाएगा। वह विकल्प संख्या चुनें जहाँ आपने अपनी मशीन पर प्रोफ़ाइल स्रोत सेट किया है।पथ फ़ाइल पर source चलाना याद रखें या अपना टर्मिनल पुनः प्रारंभ करें।
यदि आप बाद में $PATH सेट करना चुनते हैं, तो कृपया TALISMAN_HOME=$HOME/.talisman/bin को पथ में निर्यात करें।
Talisman को हुक के रूप में वैश्विक रूप से स्थापित करने से कोई मौजूदा हुक अधिलेखित नहीं होगा। यदि इंस्टॉलेशन स्क्रिप्ट को कोई मौजूदा हुक मिलता है, तो वह केवल कंसोल पर इसका संकेत देगी। एकाधिक हुक चलाने के लिए हम एक हुक फ्रेमवर्क, जैसे कि pre-commit या husky का उपयोग करने का सुझाव देते हैं। ये निर्देश मानते हैं कि talisman निष्पादन योग्य आपके सिस्टम के पथ पर कहीं स्थापित है।
pre-commit का उपयोग मौजूदा हुक्स को Talisman के साथ प्रबंधित करने के लिए करें। अपने .pre-commit-config.yaml में हमारे pre-commit-hooks का संदर्भ लें:```yaml
### Husky
[husky](https://typicode.github.io/husky) एक npm मॉड्यूल है हुक्स को प्रबंधित करने के लिए।
निम्नलिखित पंक्ति को husky pre-commit कॉन्फ़िगरेशन में जोड़ें अपने
`package.json`:```
talisman --githook pre-commit
एक बार talisman निष्पादन योग्य स्थापित हो जाने पर,