
500+ प्रकार के हार्डकोडेड रहस्यों का पता लगाएं और उन्नत जांच के साथ मान्य करें। इसे प्री-कमिट हुक, GitHub एक्शन, या CLI के रूप में उपयोग करें ताकि सक्रिय रहस्य पहचान और सुरक्षा हो सके।
# [ggshield](https://github.com/GitGuardian/ggshield): GitGuardian के साथ अपने कोड की सुरक्षा करें
[](https://pypi.org/project/ggshield/)
[](https://hub.docker.com/r/gitguardian/ggshield)
[](LICENSE)
[](https://github.com/GitGuardian/ggshield/stargazers)
[](https://github.com/GitGuardian/ggshield/actions)
[](https://codecov.io/gh/GitGuardian/ggshield/)
> [!IMPORTANT]
> **macOS: 1.54.0 पर अपग्रेड करने पर `ggshield-py` के लिए Keychain प्रॉम्प्ट ट्रिगर होता है**, यह एक दूसरा बाइनरी है जो अब हमारे प्रदर्शन सुधारों के हिस्से के रूप में आपके सहेजे गए टोकन को पढ़ता है। **Always Allow** पर क्लिक करें; यह दोबारा नहीं पूछेगा।
`ggshield` एक CLI एप्लिकेशन है जो आपके स्थानीय वातावरण या CI वातावरण में चलता है और आपको 500+ प्रकार के सीक्रेट्स का पता लगाने में मदद करता है।
`ggshield` फ़ाइलों और अन्य टेक्स्ट सामग्री में संभावित कमज़ोरियों को स्कैन और पहचानने के लिए [py-gitguardian](https://github.com/GitGuardian/py-gitguardian) के माध्यम से हमारे [public API](https://api.gitguardian.com/docs) का उपयोग करता है।
`ggshield` का उपयोग करके किए गए स्कैन से केवल मेटाडेटा जैसे कॉल समय, अनुरोध आकार और स्कैन मोड संग्रहीत किया जाता है, इसलिए सीक्रेट्स आपके डैशबोर्ड पर प्रदर्शित नहीं होंगे और **आपकी फ़ाइलें और सीक्रेट्स संग्रहीत नहीं किए जाएंगे**।
# विषय-सूची
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
- [इंस्टॉलेशन](#installation)
- [इंस्टॉल स्क्रिप्ट (अनुशंसित)](#install-script-recommended)
- [macOS](#macos)
- [Homebrew](#homebrew)
- [स्टैंडअलोन .pkg पैकेज](#standalone-pkg-package)
- [Linux](#linux)
- [Deb और RPM पैकेज](#deb-and-rpm-packages)
- [Windows](#windows)
- [Chocolatey](#chocolatey)
- [MSI इंस्टॉलर](#msi-installer)
- [स्टैंडअलोन .zip आर्काइव](#standalone-zip-archive)
- [सभी ऑपरेटिंग सिस्टम](#all-operating-systems)
- [pipx का उपयोग करना](#using-pipx)
- [pip का उपयोग करना](#using-pip)
- [प्रारंभिक सेटअप](#initial-setup)
- [`ggshield auth login` का उपयोग करना](#using-ggshield-auth-login)
- [मैन्युअल सेटअप](#manual-setup)
- [शुरुआत करना](#getting-started)
- [सीक्रेट्स](#secrets)
- [पुरानी कॉन्फ़िगरेशन फ़ाइल को माइग्रेट करना](#migrating-a-legacy-configuration-file)
- [इंटीग्रेशन](#integrations)
- [AI कोडिंग सहायक](#ai-coding-assistants)
- [और जानें](#learn-more)
- [आउटपुट](#output)
- [संबंधित ओपन सोर्स प्रोजेक्ट्स](#related-open-source-projects)
- [लाइसेंस](#license)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
# इंस्टॉलेशन
<!--
Any change made in this section must be replicated in the "Step 1: Install
ggshield" section of the "Getting started" page of ggshield public
documentation.
-->
## इंस्टॉल स्क्रिप्ट (अनुशंसित)
`ggshield` इंस्टॉल करने का सबसे तेज़ तरीका।
Linux / macOS:
```shell
curl -sSfL \
https://raw.githubusercontent.com/GitGuardian/ggshield/main/scripts/install/install.sh | bash
```
Windows (PowerShell):
```powershell
irm https://raw.githubusercontent.com/GitGuardian/ggshield/main/scripts/install/install.ps1 | iex
```
या, यदि आप `curl` पसंद करते हैं (Windows 10+ के साथ बंडल किया गया):
```powershell
curl.exe -sSL https://raw.githubusercontent.com/GitGuardian/ggshield/main/scripts/install/install.ps1 | powershell -NoProfile -ExecutionPolicy Bypass -Command -
```
स्क्रिप्ट `--instance` और `--plugin` (एक प्लगइन इंस्टॉल करें) जैसे विकल्प स्वीकार करती है। EU वर्कस्पेस या सेल्फ-होस्टेड इंस्टेंस के लिए, चलाने से पहले `GITGUARDIAN_INSTANCE` एनवायरनमेंट वेरिएबल सेट करें (या `--instance <URL>` पास करें)।
विकल्पों की पूरी सूची, अन्य इंस्टॉल विधियों, और अनइंस्टॉल करने के तरीके के लिए [`scripts/install/README.md`](https://github.com/gitguardian/ggshield/blob/main/scripts/install/README.md) देखें।
नीचे दी गई विधियाँ CLI को मैन्युअल रूप से इंस्टॉल करती हैं।
## macOS
### Homebrew
आप Homebrew का उपयोग करके `ggshield` इंस्टॉल कर सकते हैं:
```shell
brew install ggshield
```
अपग्रेड Homebrew द्वारा संभाला जाता है।
### स्टैंडअलोन .pkg पैकेज
वैकल्पिक रूप से, आप [`ggshield` रिलीज़ पेज](https://github.com/GitGuardian/ggshield/releases) से एक स्टैंडअलोन .pkg पैकेज डाउनलोड और इंस्टॉल कर सकते हैं।
इस पैकेज के लिए Python इंस्टॉल करने की आवश्यकता _नहीं_ है, लेकिन आपको नए संस्करण मैन्युअल रूप से डाउनलोड करने होंगे।
## Linux
### Deb और RPM पैकेज
Deb और RPM पैकेज [Cloudsmith](https://cloudsmith.io/~gitguardian/repos/ggshield/packages/) पर उपलब्ध हैं।
सेटअप निर्देश:
- [Deb पैकेज](https://cloudsmith.io/~gitguardian/repos/ggshield/setup/#formats-deb)
- [RPM पैकेज](https://cloudsmith.io/~gitguardian/repos/ggshield/setup/#formats-rpm)
अपग्रेड पैकेज मैनेजर द्वारा संभाला जाता है।
## Windows
### Chocolatey
`ggshield` [Chocolatey पैकेज मैनेजर](https://chocolatey.org/packages/ggshield) के माध्यम से उपलब्ध है:
```shell
choco install ggshield
```
### MSI इंस्टॉलर
[`ggshield` रिलीज़ पेज](https://github.com/GitGuardian/ggshield/releases) से MSI इंस्टॉलर डाउनलोड करें और इसे इंस्टॉल करें:
```powershell
msiexec /i ggshield-VERSION-x86_64-pc-windows-msvc.msi
```
### स्टैंडअलोन .zip आर्काइव
हम [`ggshield` रिलीज़ पेज](https://github.com/GitGuardian/ggshield/releases) पर एक स्टैंडअलोन .zip आर्काइव प्रदान करते हैं।
आर्काइव को अपनी डिस्क पर अनपैक करें, फिर `ggshield.exe` फ़ाइल वाली डायरेक्टरी को `%PATH%` में जोड़ें।
इस आर्काइव के लिए Python इंस्टॉल करने की आवश्यकता _नहीं_ है, लेकिन आपको नए संस्करण मैन्युअल रूप से डाउनलोड करने होंगे।
## सभी ऑपरेटिंग सिस्टम
`ggshield` को इसके [PyPI पैकेज](https://pypi.org/project/ggshield) के माध्यम से सभी समर्थित ऑपरेटिंग सिस्टम पर इंस्टॉल किया जा सकता है।
इसके लिए **Python का एक समर्थित संस्करण (EOL नहीं)** (स्टैंडअलोन पैकेजों को छोड़कर) और git की आवश्यकता होती है।
यदि आप `ggshield` के हमारे पैकेज किए गए संस्करणों का उपयोग नहीं करते हैं, तो कृपया ध्यान दें कि हम [Python रिलीज़ चक्र](https://devguide.python.org/versions/) का पालन करते हैं और EOL तक पहुंच चुके संस्करणों का समर्थन नहीं करते हैं।
### pipx का उपयोग करना
PyPI से `ggshield` इंस्टॉल करने का अनुशंसित तरीका [pipx](https://pypa.github.io/pipx/) का उपयोग करना है, जो इसे एक अलग वातावरण में इंस्टॉल करेगा:
```shell
pipx install ggshield
```
अपने इंस्टॉलेशन को अपग्रेड करने के लिए, चलाएँ:
```shell
pipx upgrade ggshield
```
### pip का उपयोग करना
आप pip का उपयोग करके PyPI से `ggshield` भी इंस्टॉल कर सकते हैं, लेकिन यह अनुशंसित नहीं है क्योंकि इंस्टॉलेशन अलग नहीं है, इसलिए इस तरह से इंस्टॉल किए गए अन्य एप्लिकेशन या पैकेज आपके `ggshield` इंस्टॉलेशन को प्रभावित कर सकते हैं। यह विधि तब भी काम नहीं करेगी जब आपका Python इंस्टॉलेशन बाहरी रूप से प्रबंधित घोषित किया गया हो (उदाहरण के लिए Debian 12 जैसे ऑपरेटिंग सिस्टम पर सिस्टम Python का उपयोग करते समय):
```shell
pip install --user ggshield
```
अपने इंस्टॉलेशन को अपग्रेड करने के लिए, चलाएँ:
```shell
pip install --user --upgrade ggshield
```
# प्रारंभिक सेटअप
## `ggshield auth login` का उपयोग करना
`ggshield` का उपयोग करने के लिए आपको GitGuardian सर्वर के विरुद्ध प्रमाणित करना होगा। ऐसा करने के लिए, `ggshield auth login` कमांड का उपयोग करें। यह कमांड एक व्यक्तिगत एक्सेस टोकन के प्रावधान और स्थानीय वर्कस्टेशन पर इसके कॉन्फ़िगरेशन को स्वचालित करता है।
आप इसके बारे में [`ggshield auth login` दस्तावेज़](https://docs.gitguardian.com/internal-repositories-monitoring/ggshield/reference/auth/login) से और जान सकते हैं।
प्रमाणित करने के बाद, अपने पहले स्कैन से पहले AI और git हुक कॉन्फ़िगर करने, हनीटोकन लगाने, और Endpoints पेज पर मशीन को रजिस्टर करने के लिए `ggshield machine setup` चलाएँ। रजिस्ट्रेशन में वर्तमान उपयोगकर्ता शामिल होता है, या root के रूप में चलाते समय सभी हनीटोकन लक्ष्य उपयोगकर्ता शामिल होते हैं। यह बेस्ट एफर्ट है, अधिकतम पाँच सेकंड लेता है, और कमांड के एग्ज़िट कोड को प्रभावित नहीं करता है।
`ggshield secret scan pre-commit`, `pre-push` और `ai-hook` के स्कैन भी मशीन का होस्टनेम भेजते हैं, जिससे GitGuardian इन हुक के उपयोगकर्ताओं को रजिस्टर करता है। अन्य स्कैन कमांड इसे नहीं भेजते हैं, और न ही स्टैंडअलोन और प्लेटफ़ॉर्म-विशिष्ट `pip` इंस्टॉल द्वारा चलाया जाने वाला नेटिव AI हुक भेजता है।
CI पर, ggshield न तो मशीन को रजिस्टर करता है और न ही होस्टनेम भेजता है। अन्यत्र दोनों को बंद करने के लिए, `.gitguardian.yaml` में `endpoint_registration: false` सेट करें, या `GGSHIELD_NO_ENDPOINT_REGISTRATION` को एक गैर-रिक्त मान पर सेट करें।
## मैन्युअल सेटअप
आप मैन्युअल रूप से अपना व्यक्तिगत एक्सेस टोकन भी बना सकते हैं और सेटअप पूरा करने के लिए इसे `GITGUARDIAN_API_KEY` एनवायरनमेंट वेरिएबल में संग्रहीत कर सकते हैं।
# शुरुआत करना
## सीक्रेट्स
अब आप सीक्रेट्स खोजने के लिए `ggshield` का उपयोग कर सकते हैं:
- फ़ाइलों में: `ggshield secret scan path -r .`
- रिपॉज़िटरी में: `ggshield secret scan repo .`
- Docker इमेज में (`docker` कमांड उपलब्ध होना चाहिए): `ggshield secret scan docker ubuntu:22.04`
- Pypi पैकेज में (`pip` कमांड उपलब्ध होना चाहिए): `ggshield secret scan pypi flask`
- और बहुत कुछ, विवरण के लिए `ggshield secret scan --help` आउटपुट देखें।
## पुरानी कॉन्फ़िगरेशन फ़ाइल को माइग्रेट करना
यदि `ggshield` रिपोर्ट करता है कि आपकी `.gitguardian.yaml` (या `.gitguardian.yml`) कॉन्फ़िग फ़ाइल एक अप्रचलित प्रारूप का उपयोग करती है, तो इसे नवीनतम संस्करण में माइग्रेट करें:
```shell
ggshield config migrate
```
डिफ़ॉल्ट रूप से, यह वर्तमान डायरेक्टरी में कॉन्फ़िगरेशन फ़ाइल खोजता है, इसलिए इसे उस डायरेक्टरी से चलाएँ जिसमें फ़ाइल है। इसे कहीं से भी चलाने के लिए, `ggshield` को स्पष्ट रूप से फ़ाइल की ओर इंगित करें:
```shell
ggshield --config-path path/to/.gitguardian.yaml config migrate
```
फ़ाइल का पिछला संस्करण इसके बगल में `.old` बैकअप के रूप में रखा जाता है।
# इंटीग्रेशन
आप `ggshield` को अपने [CI/CD वर्कफ़्लो](https://docs.gitguardian.com/ggshield-docs/integrations/overview#cicd-integrations-secrets-detection-in-your-cicd-workflow) में एकीकृत कर सकते हैं।
त्रुटियों को जल्दी पकड़ने के लिए, `ggshield` को [pre-commit, pre-push या pre-receive Git हुक](https://docs.gitguardian.com/ggshield-docs/integrations/overview#git-hooks-prevent-secrets-from-reaching-your-vcs) के रूप में उपयोग करें।
## AI कोडिंग सहायक
`ggshield` आपके और आपके AI कोडिंग सहायक के बीच [इंटरैक्शन को स्कैन](https://docs.gitguardian.com/ggshield-docs/integrations/ai-coding-tools/secret-scanning-for-ai-coding-tools) कर सकता है, और सीक्रेट्स वाली क्रियाओं को निष्पादित होने से पहले ब्लॉक कर सकता है।
आप `ggshield install` कमांड से हुक इंस्टॉल कर सकते हैं।
समर्थित टूल: **Cursor**, **Claude Code**, **Copilot Chat**, **Codex**, और
**Mistral Vibe 2.21+**।
# और जानें
अधिक जानकारी के लिए, [दस्तावेज़](https://docs.gitguardian.com/ggshield-docs/getting-started) देखें
# आउटपुट
यदि कोई सीक्रेट नहीं मिला है, तो एग्ज़िट कोड 0 होगा:
```bash
ggshield secret scan pre-commit
```
यदि आपके स्टेज किए गए कोड या आपके CI में कोई सीक्रेट मिलता है, तो आपको एक अलर्ट मिलेगा जिसमें वह फ़ाइलनाम होगा जहाँ सीक्रेट मिला है और एक पैच जो आपको फ़ाइल में सीक्रेट की स्थिति बताएगा:
```shell
ggshield secret scan pre-commit
```
```
2 incidents have been found in file production.rb
11 | config.paperclip_defaults = {
12 | :s3_credentials => {
13 | :bucket => "XXX",
14 | :access_key_id => "XXXXXXXXXXXXXXXXXXXX",
|_____AWS Keys_____|
15 | :secret_access_key => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
|_______________AWS Keys_______________|
16 | }
17 | }
```
बहुत लंबी पंक्तियों को टर्मिनल के आकार से मेल खाने के लिए छोटा कर दिया जाता है, जब तक कि वर्बोज़ मोड का उपयोग न किया जाए (`-v` या `--verbose`)।
# संबंधित ओपन सोर्स प्रोजेक्ट्स
- [truffleHog](https://github.com/dxa4481/truffleHog)
- [gitleaks](https://github.com/zricethezav/gitleaks)
- [gitrob](https://github.com/michenriksen/gitrob)
- [git-hound](https://github.com/tillson/git-hound)
- [AWS git-secrets](https://github.com/awslabs/git-secrets)
- [detect-secrets](https://github.com/Yelp/detect-secrets)
# लाइसेंस
`ggshield` MIT लाइसेंस प्राप्त है।