भूमिका-आधारित पहुँच नियंत्रण (RBAC)
अपने Kubernetes क्लस्टर में उपयोगकर्ताओं और सर्विस अकाउंट की अनुमतियाँ सुरक्षित रूप से प्रबंधित करने के लिए RBAC कॉन्फ़िगर करें।
भूमिका-आधारित पहुँच नियंत्रण (RBAC), CoddyKit पर डेवलपरों के लिए Docker और Kubernetes का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह डेवलपरों के लिए Docker और Kubernetes सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
Kubernetes RBAC क्या है
Role-Based Access Control (RBAC) में आपका स्वागत है! Kubernetes में RBAC, आपके संगठन के अलग-अलग उपयोगकर्ताओं की भूमिकाओं के आधार पर कंप्यूटर या नेटवर्क संसाधनों तक पहुँच को नियंत्रित करने की एक विधि है।
इसे अपने क्लस्टर का सुरक्षा प्रहरी समझिए: यह तय करता है कि कौन क्या कर सकता है।
RBAC क्यों आवश्यक है
RBAC क्लस्टर की सुरक्षा और परिचालन अखंडता के लिए अत्यंत महत्वपूर्ण है। इसके बिना, पहुँच रखने वाला कोई भी उपयोगकर्ता या प्रक्रिया कोई भी कार्य कर सकती है, जिससे सुरक्षा कमज़ोरियाँ या आकस्मिक गलत कॉन्फ़िगरेशन हो सकते हैं।
- सुरक्षा: अनधिकृत पहुँच को रोकती है।
- न्यूनतम विशेषाधिकार: सुनिश्चित करता है कि उपयोगकर्ताओं और अनुप्रयोगों के पास केवल आवश्यक अनुमतियाँ हों।
- अनुपालन: पहुँच नियंत्रण संबंधी नियामक आवश्यकताओं को पूरा करने में सहायता करता है।
RBAC की मूल अवधारणाएँ: विषय
RBAC में विषय वह होता है जो कोई कार्य कर रहा है। Kubernetes विषयों के तीन प्रकार पहचानता है:
- उपयोगकर्ता: मानव उपयोगकर्ता (अक्सर बाहरी रूप से प्रबंधित)।
- सर्विस अकाउंट: Pod में चलने वाली प्रक्रियाओं की पहचान। ये Kubernetes के मूल घटक होते हैं।
- समूह: उपयोगकर्ताओं या सर्विस अकाउंट का संग्रह।
हम सर्विस अकाउंट पर ध्यान देंगे, क्योंकि वे Kubernetes के भीतर अनुप्रयोग सुरक्षा के लिए केंद्रीय हैं।
RBAC की मूल अवधारणाएँ: भूमिकाएँ
एक भूमिका यह परिभाषित करती है कि कौन-से कार्य किए जा सकते हैं। भूमिकाएँ हमेशा नेमस्पेस-सीमित होती हैं, अर्थात उनसे दी गई अनुमतियाँ केवल किसी विशेष नेमस्पेस में लागू होती हैं।
एक भूमिका में rules होती हैं, जो अनुमतियों के समूह हैं। प्रत्येक नियम निर्दिष्ट करता है:
apiGroups: वह API समूह जिससे संसाधन संबंधित है (जैसे कोर के लिए""और परिनियोजनों के लिएapps)।resources: विशिष्ट संसाधन प्रकार (जैसेpodsऔरdeployments)।verbs: अनुमत कार्य (जैसेget,list,createऔरdelete)।
RBAC की मूल अवधारणाएँ: ClusterRoles
भूमिकाओं की तरह, एक ClusterRole भी यह परिभाषित करता है कि कौन-से कार्य किए जा सकते हैं, लेकिन यह क्लस्टर-सीमित होता है। इसका अर्थ है कि इसकी अनुमतियाँ पूरे क्लस्टर में लागू होती हैं।
ClusterRoles का उपयोग इन कार्यों के लिए किया जाता है:
- क्लस्टर-सीमित संसाधनों (जैसे नोड) तक पहुँच देना।
- सभी नेमस्पेस में मौजूद संसाधनों तक पहुँच देना।
- गैर-संसाधन एंडपॉइंट (जैसे
/healthz) तक पहुँच देना।
RBAC की मूल अवधारणाएँ: RoleBindings
एक RoleBinding यह बताता है कि अनुमतियाँ कैसे दी जाती हैं। यह किसी विषय (उपयोगकर्ता, ServiceAccount या समूह) को किसी भूमिका से जोड़ता है।
भूमिकाओं की तरह, RoleBindings भी नेमस्पेस-सीमित होते हैं। इसका अर्थ है कि बाइंडिंग भूमिका में परिभाषित अनुमतियाँ विषय को देती है, लेकिन केवल उस विशेष नेमस्पेस में।
RBAC की मूल अवधारणाएँ: ClusterRoleBindings
एक ClusterRoleBinding किसी विषय को किसी ClusterRole से जोड़ता है। चूँकि ClusterRoles क्लस्टर-सीमित होते हैं, इसलिए ClusterRoleBinding पूरे क्लस्टर में अनुमतियाँ देता है।
ClusterRoleBindings का सावधानी से उपयोग करें, क्योंकि वे व्यापक पहुँच देते हैं। इनका उपयोग आमतौर पर क्लस्टर प्रशासकों या सिस्टम-स्तरीय घटकों के लिए किया जाता है।
उदाहरण: ServiceAccount बनाना
आइए default नेमस्पेस में my-app-sa नाम का ServiceAccount बनाएँ। यह ServiceAccount भविष्य के अनुप्रयोग Pod की पहचान होगा।
अपने टर्मिनल में यह कमांड चलाएँ:
kubectl create serviceaccount my-app-sa -n defaultउदाहरण: Pod Reader भूमिका परिभाषित करना
अब default नेमस्पेस में pod-reader नाम की भूमिका परिभाषित करें। यह भूमिका विषयों को Pod के लिए get, list और watch कार्य करने देगी।
इस YAML को pod-reader-role.yaml नाम से सहेजें और kubectl apply -f pod-reader-role.yaml का उपयोग करके लागू करें:
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: pod-reader
namespace: default
rules:
- apiGroups: [""] # Core API group
resources: ["pods", "pods/log"]
verbs: ["get", "list", "watch"]उदाहरण: भूमिका को जोड़ना
अंत में, read-pods-binding नाम का RoleBinding बनाएँ, जो हमारे my-app-sa ServiceAccount को default नेमस्पेस में pod-reader भूमिका से जोड़ेगा।
इस YAML को pod-reader-binding.yaml नाम से सहेजें और इसे लागू करें:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-pods-binding
namespace: default
subjects:
- kind: ServiceAccount
name: my-app-sa
namespace: default
roleRef:
kind: Role
name: pod-reader
apiGroup: rbac.authorization.k8s.ioत्वरित जाँच: RBAC संसाधन
किस Kubernetes संसाधन का उपयोग किसी ServiceAccount को पूरे क्लस्टर की अनुमतियाँ देने के लिए किया जाता है?
RBAC: मुख्य बातें
आपने Kubernetes RBAC की मूल बातें सीख ली हैं!
- विषय: कार्य कौन कर रहा है (उपयोगकर्ता, सर्विस अकाउंट और समूह)।
- भूमिकाएँ/ClusterRoles: कौन-से कार्य अनुमत हैं (नेमस्पेस-सीमित बनाम क्लस्टर-सीमित)।
- RoleBindings/ClusterRoleBindings: विषयों को अनुमतियों से कैसे जोड़ा जाता है (नेमस्पेस-सीमित बनाम क्लस्टर-सीमित)।
अपने Kubernetes अनुप्रयोगों और आधारभूत संरचना को सुरक्षित रखने के लिए RBAC में दक्ष होना अत्यंत महत्वपूर्ण है। अलग-अलग अनुमति समूहों के साथ अभ्यास करते रहें!
एआई शिक्षक के साथ डेवलपरों के लिए Docker और Kubernetes सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “भूमिका-आधारित पहुँच नियंत्रण (RBAC)” पाठ निःशुल्क है?
हाँ—“भूमिका-आधारित पहुँच नियंत्रण (RBAC)” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। डेवलपरों के लिए Docker और Kubernetes पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“भूमिका-आधारित पहुँच नियंत्रण (RBAC)” में मैं क्या सीखूँगा?
अपने Kubernetes क्लस्टर में उपयोगकर्ताओं और सर्विस अकाउंट की अनुमतियाँ सुरक्षित रूप से प्रबंधित करने के लिए RBAC कॉन्फ़िगर करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ डेवलपरों के लिए Docker और Kubernetes का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या डेवलपरों के लिए Docker और Kubernetes शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर डेवलपरों के लिए Docker और Kubernetes शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“भूमिका-आधारित पहुँच नियंत्रण (RBAC)” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस डेवलपरों के लिए Docker और Kubernetes पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर डेवलपरों के लिए Docker और Kubernetes पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- भूमिका-आधारित पहुँच नियंत्रण (RBAC)
- पॉड सुरक्षा और इमेज स्कैनिंग
- Kubernetes नेटवर्क ट्रैफ़िक सुरक्षित करना
- बाहरी secret store से secrets का सुरक्षित प्रबंधन