# Secret किसे कहते हैं — डेवलपर्स के लिए 1Password और Secrets Hygiene

Source: https://www.geekswithgeeks.com/hi/secrets-hygiene/sh-what-is-secret

> Passwords, API keys, tokens और private keys पहचानें और उन्हें सामान्य configuration से अलग करें।

## जो भी पहुँच दे

**Secret** वह मान है जो किसी चीज़ तक पहुँच देता है: password, API key, access token, password वाली database connection string, या private key। अगर कोई और इसे पाकर आपकी तरह काम कर सके, तो यह secret है।

## Secret का जीवन-चक्र

Secret बनता है, रखा जाता है, उपयोग होता है और अंत में बदला या रद्द किया जाता है। हर चरण में leak हो सकता है।

![चार चरण: बनाना, रखना, उपयोग करना, बदलना।](assets/figures/secrets-hygiene/section-1-map.svg) — चित्र 1.1 — बनाना, रखना, उपयोग, बदलना।

## Config या secret?

Port number सामान्य config है और commit करना सुरक्षित है। Password और key secrets हैं और कहीं और रखे जाने चाहिए।

```bash
PORT=3000                 # config: safe to commit
DB_PASSWORD=...           # secret
STRIPE_SECRET_KEY=sk_...  # secret
APP_NAME=shop             # config
```

## घर की चाबियाँ

आपके घर का पता सार्वजनिक जानकारी है, जैसे config। चाबी secret है। आप स्पेयर चाबी दरवाज़े पर चिपका नहीं देते, पर public repo में key डाल देना यही करता है।

**Quiz:** इनमें से कौन-सा secret है?

- [ ] ऐप का display name
- [x] Cloud API access token
- [ ] HTTP port number
- [ ] Log level

*Answer:* Cloud API access token. Token किसी service तक पहुँच देता है। नाम, port और log level नहीं देते।
