Role Based Access Control (RABC)

Role-Based Access Control (RBAC) ही एक सुरक्षिततेसाठी वापरली जाणारी प्रणाली आहे जे की OpenShift सारख्या kubernetes आधारित प्लॅटफॉर्मवर वापरली जाते. यामुडे वापरकर्त्यांना विशिष्ट भूमिका ( Roles ) देऊन त्यांचे अधिकार मर्यादित करते म्हणजेच कोण कोणते resource वापरू शकतो ह्या गोष्टी निश्चित करतो.

🔐 RBAC म्हणजे काय?

RBAC ही अशी प्रणाली आहे ज्यामध्ये आपण वापरकर्त्यांना विशिष्ट भूमिका (Roles) आणि त्या भूमिकाशी निगडीत अधिकार (permissions) देतो यामुडे संपूर्ण system मध्ये सुरक्षा आणि नियंत्रण राखता येते.

🔐 RBAC म्हणजे काय?

  1. Role (भूमिका)
  • Role मध्ये ठराविक अधिकार असतात जसे की pod वाचने, तयार करणे किवा डिलीट करणे
  • Role एक Namespace मध्येच मर्यादित असते

 

  1. ClusterRole
  • हे Role संपूर्ण क्लस्टर साठी लागू होते
  • उदा. सर्व NameSpaces मधील pods वर काम करणे

 

  1. Role Binding
  • Role Binding वापरुन Role एका वापरकर्त्यास किवा ग्रुपला दिली जाते
  • Role Binding विशिष्ट NameSpace मध्येच असते

 

  1. Cluster Role Binding
  • हा Cluster Role ला संपूर्ण क्लस्टर मध्ये एका वापरकर्त्याशी किवा ग्रुपशी जोडते.

उदाहरण (Example):

  1. Role तयार करणे:

apiVersion: rbac.authorization.k8s.io/v1

kind: Role

metadata:

  namespace: demo

  name: pod-reader

rules:

– apiGroups: [“”]

  resources: [“pods”]

  verbs: [“get”, “watch”, “list”]

  1. RoleBinding तयार करणे:

apiVersion: rbac.authorization.k8s.io/v1

kind: RoleBinding

metadata:

  name: read-pods

  namespace: demo

subjects:

– kind: User

  name: rahul

  apiGroup: rbac.authorization.k8s.io

roleRef:

  kind: Role

  name: pod-reader

  apiGroup: rbac.authorization.k8s.io

वरील उदाहरणात, rahul या युजरला demo namespace मध्ये Pods वाचण्याचा (get/list/watch) अधिकार दिला आहे

✅ फायदे:

  • सुरक्षितता वाढते
  • किमान आवश्यक access देता येतो (Least Privilege)
  • Role वेगवेगळ्या युजर्ससाठी reuse करता येतात