Cyber Security Academy · पाठ

गतिशील सीक्रेट और लीज़िंग

अल्पकालिक, स्वतः समाप्त होने वाले क्रेडेंशियल।

पाठ 3, कुल 4 में से13 चरण

गतिशील सीक्रेट और लीज़िंग, CoddyKit पर Cyber Security Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Cyber Security Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

स्थिर बनाम गतिशील गोपनीय जानकारी

स्थिर गोपनीय जानकारी एक बार बनाई जाती है और अनिश्चित काल तक दोबारा उपयोग की जाती है—जैसे वही डेटाबेस कूटशब्द, जिसे दस सेवाएँ वर्षों तक साझा करती रहें। स्थिर गोपनीय जानकारी सामान्य स्थिति है, और यही समस्या भी है: उसका जीवनकाल लंबा होता है, वह व्यापक रूप से साझा की जाती है और उसे बदलना कठिन होता है।

गतिशील गोपनीय जानकारी आवश्यकता पर बनाई जाती है, एक उपभोक्ता के लिए विशिष्ट होती है और अपने-आप समाप्त हो जाती है। कूटशब्द को संग्रहित करने के बजाय, वॉल्ट हर अनुरोध पर एक बिल्कुल नया प्रमाण-पत्र बनाता है।

यह एक बदलाव गोपनीय जानकारी के प्रबंधन की सबसे कठिन समस्याएँ हल कर देता है: बदलाव स्वचालित हो जाता है और किसी भी रिसाव का प्रभाव-क्षेत्र लगभग शून्य रह जाता है।

गतिशील गोपनीय जानकारी कैसे काम करती है

गतिशील गोपनीय जानकारी के लिए आवश्यक है कि वॉल्ट को पृष्ठभाग प्रणाली पर उच्चाधिकार अभिगम प्राप्त हो। डेटाबेस के लिए प्रक्रिया इस प्रकार है:

  • एक प्रशासक वॉल्ट को मूल डेटाबेस प्रमाण-पत्र और निर्माण टेम्पलेट के साथ विन्यस्त करता है।
  • कोई अनुप्रयोग प्रमाणीकरण करता है और प्रमाण-पत्र का अनुरोध करता है।
  • वॉल्ट डेटाबेस पर CREATE USER चलाता है और नया उपयोगकर्ता नाम तथा कूटशब्द लौटाता है।
  • लीज़ समाप्त होने पर वॉल्ट अपने-आप DROP USER चलाता है।

अनुप्रयोग को कभी भी लंबे समय तक चलने वाला कूटशब्द दिखाई नहीं देता—उसे अपनी पहचान और लीज़ से जुड़ा अस्थायी प्रमाण-पत्र मिलता है।

# Configure Vault's database engine with a creation statement
vault write database/roles/billing-readonly \
  db_name=appdb \
  creation_statements="CREATE ROLE \"{{name}}\" LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT SELECT ON billing TO \"{{name}}\";" \
  default_ttl="1h" max_ttl="24h"

गतिशील प्रमाण-पत्र का अनुरोध करना

जब किसी अनुप्रयोग को डेटाबेस अभिगम की आवश्यकता होती है, तो वह वॉल्ट से प्रमाण-पत्र माँगता है। उत्तर में नया बनाया गया विशिष्ट उपयोगकर्ता नाम और कूटशब्द तथा एक लीज़ मिलता है, जो बताती है कि वह कितने समय तक मान्य रहेगा।

हर उपभोक्ता को अपना प्रमाण-पत्र मिलता है। यदि एक ही सेवा के दो पॉड शुरू होते हैं, तो उन्हें दो अलग-अलग उपयोगकर्ता नाम मिलते हैं, जिससे डेटाबेस स्तर पर प्रति-उपभोक्ता लेखा-परीक्षण संभव होता है।

vault read database/creds/billing-readonly

# Example response:
# lease_id     database/creds/billing-readonly/abc123
# lease_duration  1h
# password     A1b-2Cd3-temp-xyz
# username     v-approle-billing-9f3a2

लीज़: जीवनकाल का अनुबंध

लीज़ ऐसा अनुबंध है, जो बताता है कि यह गोपनीय जानकारी कितने समय तक मान्य रहेगी। हर गतिशील गोपनीय जानकारी में एक TTL (जीवनकाल) और एक वैकल्पिक अधिकतम TTL होता है।

  • डिफ़ॉल्ट_टीटीएल समाप्त होने से पहले प्रमाण-पत्र कितने समय तक जीवित रहता है।
  • अधिकतम_टीटीएल नवीनीकरण के बाद भी मान्य रहने की पूर्ण अधिकतम सीमा।

लीज़ समाप्त होने पर वॉल्ट प्रमाण-पत्र को निरस्त कर देता है—वह डेटाबेस उपयोगकर्ता को सक्रिय रूप से हटा देता है। समाप्ति केवल एक संकेत नहीं है; यह वास्तविक सफ़ाई शुरू करती है। इसी कारण लीक हुई गतिशील गोपनीय जानकारी स्वयं-सुधारक होती है: चोरी हुआ प्रमाण-पत्र TTL की अवधि के भीतर बेकार हो जाता है।

लीज़ का नवीनीकरण और निरस्तीकरण

जो अनुप्रयोग लीज़ की अवधि से अधिक समय तक चलते हैं, उन्हें समाप्ति से पहले उसका नवीनीकरण करना चाहिए। नवीनीकरण TTL को अधिकतम TTL तक बढ़ाता है; उसके बाद अनुप्रयोग को नए प्रमाण-पत्र का अनुरोध करना पड़ता है।

संचालक किसी घटना के दौरान लीज़ को तुरंत निरस्त भी कर सकते हैं—यह आपात बंद स्विच की तरह काम करता है। लीज़ निरस्त करने पर शेष TTL की परवाह किए बिना अंतर्निहित प्रमाण-पत्र तुरंत हटा दिया जाता है।

आप किसी उपसर्ग के अंतर्गत आने वाली सभी लीज़ को भी निरस्त कर सकते हैं, जिससे पूरी सेवा या परिवेश का अभिगम तुरंत काटा जा सकता है।

# Renew a lease before it expires
vault lease renew database/creds/billing-readonly/abc123

# Revoke a single lease immediately (incident kill switch)
vault lease revoke database/creds/billing-readonly/abc123

# Revoke every lease under a path prefix
vault lease revoke -prefix database/creds/billing-readonly

डेटाबेस से आगे

गतिशील गोपनीय जानकारी केवल डेटाबेस तक सीमित नहीं है। वॉल्ट और ऐसे ही उपकरण अनेक प्रणालियों के लिए अल्पकालिक प्रमाण-पत्र बनाते हैं:

  • क्लाउड IAM STS-जैसी भूमिका ग्रहण प्रक्रिया के माध्यम से अस्थायी AWS/GCP/एज़्योर अभिगम कुंजियाँ।
  • SSH स्थिर कुंजियों के बजाय हस्ताक्षरित, अल्पकालिक SSH प्रमाण-पत्र।
  • PKI/TLS कम अवधि के लिए माँग पर जारी किए गए प्रमाण-पत्र।
  • RabbitMQ, MongoDB, कंसुल के क्षणिक सेवा प्रमाण-पत्र।

हर जगह तरीका एक ही है: अनुरोध करें, थोड़े समय के लिए उपयोग करें और अपने-आप समाप्त होने दें। लंबे समय तक चलने वाली स्थिर क्लाउड कुंजियाँ अक्सर सुरक्षा-भंग का स्रोत बनती हैं; गतिशील IAM प्रमाण-पत्र उन्हें समाप्त कर देते हैं।

# Generate temporary AWS credentials scoped to a role
vault read aws/creds/deploy-role
# returns short-lived access_key, secret_key, security_token

# Sign an SSH key for short-lived access (valid minutes, not forever)
vault write ssh/sign/admin public_key=@id_ed25519.pub ttl=15m

गतिशील गोपनीय जानकारी प्रभाव-क्षेत्र को क्यों घटाती है

दोनों मॉडलों में लीक हुए प्रमाण-पत्र पर विचार करें:

  • स्थिर कूटशब्द तब तक मान्य रहता है, जब तक कोई व्यक्ति उसे देख कर बदल न दे और हर उपभोक्ता को अद्यतन न कर दे। जोखिम की अवधि कई दिन या महीने होती है।
  • गतिशील प्रमाण-पत्र अपने TTL के भीतर समाप्त हो जाता है—अक्सर कुछ मिनट से एक घंटे में—और न्यूनतम अनुमतियों के साथ एक ही उपभोक्ता तक सीमित रहता है। जोखिम की अवधि बहुत छोटी होती है और क्षति सीमित रहती है।

गतिशील गोपनीय जानकारी बदलाव को कठिन मैन्युअल परियोजना से बदलकर प्रणाली का स्वचालित, निरंतर गुण बना देती है।

मूल प्रमाण-पत्र का समझौता

गतिशील गोपनीय जानकारी शक्तिशाली होती है, लेकिन इसके लिए वॉल्ट के पास हर उस पृष्ठभाग के लिए अत्यधिक विशेषाधिकार वाला रूट प्रमाण-पत्र होना आवश्यक है, जहाँ वह अपने द्वारा जारी किए जाने वाले उपयोगकर्ता बना सकता है। इससे जोखिम वॉल्ट में केंद्रित हो जाता है।

जोखिम कम करने के उपाय:

  • मूल प्रमाण-पत्र को स्वयं बदलें, ताकि वॉल्ट भी मूल प्रशासक कूटशब्द को हमेशा अपने पास न रखे।
  • रूट खाते का दायरा केवल उपयोगकर्ता बनाने और हटाने के लिए आवश्यक अनुमतियों तक रखें—इससे अधिक नहीं।
  • वॉल्ट होस्ट को अलग रखें और उसकी कड़ी निगरानी करें, क्योंकि अब वह अत्यधिक मूल्यवान लक्ष्य है।

वॉल्ट अपने मूल प्रमाण-पत्र को स्वयं बदल सकता है, ताकि विन्यास के बाद कोई भी मनुष्य उसे न जानता हो।

# After configuring the engine, rotate the root credential
# so even operators no longer know the original password
vault write -force database/rotate-root/appdb

अनुप्रयोग कोड में समाप्ति संभालना

अनुप्रयोगों को प्रमाण-पत्र बदलने की अपेक्षा के अनुसार लिखा जाना चाहिए। स्थिर गोपनीय जानकारी के साथ कोड प्रारंभ होने पर एक बार कूटशब्द पढ़ता है। गतिशील गोपनीय जानकारी के साथ कोड को यह करना चाहिए:

  • प्रमाण-पत्र प्राप्त करें और उसकी लीज़ TTL नोट करें।
  • लीज़ का नवीनीकरण करें या समाप्ति से पहले नया प्रमाण-पत्र फिर से प्राप्त करें।
  • पुराना प्रमाण-पत्र निरस्त होने पर सहज रूप से पुनः कनेक्ट करें।

एक सामान्य तरीका सहायक एजेंट का उपयोग करना है, जो लीज़ का जीवनचक्र संभालता है और स्थानीय गोपनीय जानकारी की संचिका को फिर से लिखता है, ताकि अनुप्रयोग बस अपना विन्यास दोबारा पढ़ ले। कनेक्शन पूल को भी ताज़ा करना आवश्यक है, ताकि वे समाप्त प्रमाण-पत्र को पकड़े न रहें।

# Vault Agent auto-renews and re-templates on rotation
auto_auth { method "approle" { ... } }
template {
  contents    = "{{ with secret \"database/creds/billing-readonly\" }}{{ .Data.username }}:{{ .Data.password }}{{ end }}"
  destination = "/run/secrets/db"
  command     = "systemctl reload billing-app"
}

जब स्थिर गोपनीय जानकारी अपरिहार्य हो

हर गोपनीय जानकारी गतिशील नहीं हो सकती। कुछ तृतीय-पक्ष एपीआई एक ऐसी दीर्घकालिक कुंजी देते हैं, जिसे माँग पर बनाया नहीं जा सकता। ऐसी स्थिर गोपनीय जानकारी के लिए जोखिम-घटाने वाले नियंत्रण लागू करें:

  • उसे वॉल्ट में रखें, कोड में कभी नहीं।
  • उसका दायरा न्यूनतम आवश्यक विशेषाधिकारों तक रखें।
  • उसे एक समय-सारणी के अनुसार बदलें (अगले पाठ में बताया जाएगा)।
  • असामान्यताओं के लिए उसके उपयोग की निगरानी करें।

सामान्य नियम: गतिशील को प्राथमिकता दें; स्थिर का उपयोग करना पड़े तो उसे निरंतर बदलें और उसका लेखा-परीक्षण करें।

सीआई/सीडी में गतिशील गोपनीय जानकारी

सीआई/सीडी कार्य-श्रृंखलाएँ इसका प्रमुख उपयोग-मामला हैं। पारंपरिक रूप से कोई कार्य-श्रृंखला लंबे समय तक चलने वाली परिनियोजन कुंजियाँ रखती है—जो हमलावरों के लिए आकर्षक लक्ष्य होती हैं। गतिशील गोपनीय जानकारी के साथ कार्य-श्रृंखला:

  • अपनी OIDC पहचान का उपयोग करके वॉल्ट में प्रमाणीकरण करती है (जैसे GitHub की कार्यवाहियों का OIDC टोकन)।
  • ऐसे अल्पकालिक क्लाउड प्रमाण-पत्रों का अनुरोध करती है, जो केवल कार्य की अवधि तक मान्य होते हैं।
  • कार्य समाप्त होने पर उन्हें अपने-आप समाप्त होने देती है।

लंबे समय तक चलने वाली कोई परिनियोजन कुंजी कभी अस्तित्व में नहीं आती। भंग की गई कार्य-श्रृंखला के अभिलेख से लीक हुआ प्रमाण-पत्र तब तक पहले ही अमान्य हो चुका होता है, जब तक कोई उसे पढ़ता है।

# GitHub Actions job exchanges its OIDC token for a short-lived AWS role
# No static AWS keys stored as repo secrets
permissions:
  id-token: write
steps:
  - uses: aws-actions/configure-aws-credentials@v4
    with:
      role-to-assume: arn:aws:iam::123:role/deploy
      aws-region: eu-central-1

त्वरित जाँच

लीज़ और गतिशील गोपनीय जानकारी की अपनी समझ का परीक्षण करें।

पुनरावलोकन: गतिशील गोपनीय जानकारी और लीज़

आपने सीखा कि अल्पकालिक, अपने-आप समाप्त होने वाले प्रमाण-पत्र गोपनीय जानकारी के प्रबंधन को कैसे बदल देते हैं।

  • गतिशील गोपनीय जानकारी आवश्यकता पर बनाई जाती है, हर उपभोक्ता के लिए विशिष्ट होती है और दोबारा उपयोग की जाने वाली स्थिर गोपनीय जानकारी के विपरीत अपने-आप समाप्त हो जाती है।
  • एक लीज़ TTL और अधिकतम TTL निर्धारित करती है; समाप्ति पर वॉल्ट वास्तविक सफ़ाई के साथ प्रमाण-पत्र को निरस्त कर देता है।
  • दीर्घकालिक अनुप्रयोग लीज़ का नवीनीकरण कर सकते हैं, या किसी घटना के दौरान आपात बंद स्विच के रूप में उसे तुरंत निरस्त किया जा सकता है।
  • गतिशील गोपनीय जानकारी डेटाबेस, क्लाउड IAM, SSH, PKI और अन्य प्रणालियों के लिए काम करती है, प्रभाव-क्षेत्र घटाती है और बदलाव को स्वचालित करती है।
  • इसका समझौता यह है कि वॉल्ट में एक विशेषाधिकारयुक्त रूट प्रमाण-पत्र रखना पड़ता है; उसे बदलें और उसका दायरा कड़ाई से सीमित रखें।
  • अनुप्रयोगों और सीआई/सीडी को समाप्ति संभालने के लिए लिखा जाना चाहिए; गतिशील गोपनीय जानकारी को प्राथमिकता दें और अपरिहार्य होने पर स्थिर गोपनीय जानकारी बदलें।

अगले पाठ में हम कुंजियों को बदलने और लीक का पता लगाने के बारे में जानेंगे, जब वे सुरक्षा नियंत्रणों से बच निकलें।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Cyber Security Academy सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
303

अक्सर पूछे जाने वाले प्रश्न

क्या “गतिशील सीक्रेट और लीज़िंग” पाठ निःशुल्क है?

हाँ — Cyber Security Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “गतिशील सीक्रेट और लीज़िंग” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Cyber Security Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“गतिशील सीक्रेट और लीज़िंग” में मैं क्या सीखूँगा?

अल्पकालिक, स्वतः समाप्त होने वाले क्रेडेंशियल। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Cyber Security Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Cyber Security Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Cyber Security Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“गतिशील सीक्रेट और लीज़िंग” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Cyber Security Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Cyber Security Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. सीक्रेट के अनियंत्रित प्रसार की समस्या
  2. वॉल्ट और सीक्रेट स्टोर
  3. गतिशील सीक्रेट और लीज़िंग
  4. कुंजी रोटेशन और डिटेक्शन
← Cyber Security Academy पर वापस जाएँ