Roolipohjainen pääsynhallinta (RBAC)
Määritä RBAC hallitsemaan käyttäjien ja palvelutilien käyttöoikeuksia turvallisesti Kubernetes-klusterissa.
Roolipohjainen pääsynhallinta (RBAC) on ilmainen Docker ja Kubernetes kehittäjille-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Docker ja Kubernetes kehittäjille-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Docker ja Kubernetes kehittäjille-kurssilla on yhteensä 4 oppituntia.
Mikä on Kubernetesin RBAC?
Tervetuloa tutustumaan roolipohjaiseen pääsynhallintaan (RBAC)! Kubernetesissa RBAC on menetelmä, jolla tietokone- tai verkkoresurssien käyttöä rajoitetaan organisaation yksittäisille käyttäjille määritettyjen roolien perusteella.
Ajatelkaa sitä klusterinne vartijana: se päättää, kuka saa tehdä mitä.
Miksi RBAC on välttämätön
RBAC on ratkaisevan tärkeä klusterin tietoturvan ja toiminnan eheyden kannalta. Ilman sitä kuka tahansa käyttöoikeuden saanut käyttäjä tai prosessi voisi mahdollisesti suorittaa minkä tahansa toiminnon, mikä voisi johtaa tietoturva-aukkoihin tai tahattomiin virheellisiin konfiguraatioihin.
- Tietoturva: Estää luvattoman käytön.
- Vähimmät tarvittavat oikeudet: Varmistaa, että käyttäjillä ja sovelluksilla on vain tarvitsemansa oikeudet.
- Vaatimustenmukaisuus: Auttaa täyttämään pääsynhallintaa koskevat sääntelyvaatimukset.
RBACin peruskäsitteet: Subjectit
RBACissa Subject tarkoittaa toiminnon suorittajaa eli sitä, 'kuka' toiminnon suorittaa. Kubernetes tunnistaa kolmenlaisia Subject-kohteita:
- Käyttäjät: Ihmiskäyttäjät, joita hallitaan usein Kubernetesin ulkopuolella.
- Service Accountit: Podeissa suoritettavien prosessien identiteetit. Ne ovat Kubernetesin omia.
- Ryhmät: Käyttäjien tai Service Accountien kokoelmat.
Keskitymme Service Account -tileihin, koska ne ovat keskeisiä sovellusten tietoturvassa Kubernetesissa.
RBACin peruskäsitteet: Role-roolit
Role määrittää, mitä toimintoja voidaan suorittaa. Role-roolit ovat aina namespaceen rajattuja, eli niiden myöntämät oikeudet koskevat vain tiettyä namespacea.
Role sisältää rules-sääntöjä, jotka ovat oikeusjoukkoja. Jokainen sääntö määrittää:
apiGroups: API-ryhmän, johon resurssi kuuluu (esimerkiksi""ydinresursseille jaappsDeployment-resursseille).resources: Tarkat resurssityypit (esimerkiksipodsjadeployments).verbs: Sallitut toiminnot (esimerkiksiget,list,createjadelete).
RBACin peruskäsitteet: ClusterRole-roolit
Role-roolien tapaan myös ClusterRole määrittää, mitä toimintoja voidaan suorittaa, mutta se on klusterin laajuinen. Tämä tarkoittaa, että sen oikeudet koskevat koko klusteria.
ClusterRole-rooleja käytetään seuraaviin tarkoituksiin:
- Klusterin laajuisten resurssien, kuten solmujen, käyttöoikeuksien myöntämiseen.
- Kaikkien namespacejen resurssien käyttöoikeuksien myöntämiseen.
- Muiden kuin resurssien päätepisteiden, kuten
/healthz, käyttöoikeuksien myöntämiseen.
RBACin peruskäsitteet: RoleBindingit
RoleBinding määrittää, miten oikeudet myönnetään. Se yhdistää Subjectin (Userin, ServiceAccountin tai Groupin) Roleen.
Role-roolien tavoin myös RoleBindingit ovat namespaceen rajattuja. Tämä tarkoittaa, että sidonta myöntää Rolessa määritetyt oikeudet Subjectille, mutta vain kyseisessä namespacessa.
RBACin peruskäsitteet: ClusterRoleBindingit
ClusterRoleBinding yhdistää Subjectin ClusterRoleen. Koska ClusterRole-roolit ovat klusterin laajuisia, ClusterRoleBinding myöntää oikeudet koko klusteriin.
Käyttäkää ClusterRoleBinding-sidontoja harkiten, sillä ne myöntävät laajat oikeudet. Niitä käytetään yleensä klusterin ylläpitäjille tai järjestelmätason komponenteille.
Esimerkki: Service Accountin luominen
Luodaan my-app-sa-niminen Service Account default-namespaceen. Tämä Service Account toimii tulevan sovelluspodin identiteettinä.
Suorittakaa tämä komento terminaalissa:
kubectl create serviceaccount my-app-sa -n defaultEsimerkki: Pod Reader -Rolen määrittäminen
Määritetään nyt pod-reader-niminen Role default-namespaceen. Tämä Role sallii Subjectien käyttää podeihin kohdistuvia toimintoja get, list ja watch.
Tallentakaa tämä YAML tiedostoksi pod-reader-role.yaml ja ottakaa se käyttöön komennolla 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"]Esimerkki: Rolen sitominen
Luodaan lopuksi read-pods-binding-niminen RoleBinding, joka yhdistää my-app-sa-Service Accountin pod-reader-Roleen default-namespacessa.
Tallentakaa tämä YAML tiedostoksi pod-reader-binding.yaml ja ottakaa se käyttöön:
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.ioPikatarkistus: RBAC-resurssit
Mitä Kubernetes-resurssia käytetään klusterin laajuisten oikeuksien myöntämiseen Service Accountille?
RBAC: tärkeimmät opit
Olette oppineet Kubernetesin RBACin perusteet!
- Subjectit: Kuka toimii (Userit, Service Accountit ja Groupit).
- Role- ja ClusterRole-roolit: Mitkä toiminnot sallitaan (namespaceen rajatut tai klusterin laajuiset).
- RoleBindingit ja ClusterRoleBindingit: Miten Subjectit yhdistetään oikeuksiin (namespaceen rajatut tai klusterin laajuiset).
RBACin hallitseminen on ratkaisevan tärkeää Kubernetes-sovellusten ja -infrastruktuurin suojaamiseksi. Harjoitelkaa edelleen erilaisilla oikeusjoukoilla!
Opi Docker ja Kubernetes kehittäjille tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 12
- Oppitunnit
- 48
Usein kysytyt kysymykset
Onko oppitunti ”Roolipohjainen pääsynhallinta (RBAC)” ilmainen?
Kyllä – oppitunnin ”Roolipohjainen pääsynhallinta (RBAC)” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Docker ja Kubernetes kehittäjille-kurssin, päivitä CoddyKit PROhon. Docker ja Kubernetes kehittäjille-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Roolipohjainen pääsynhallinta (RBAC)”?
Määritä RBAC hallitsemaan käyttäjien ja palvelutilien käyttöoikeuksia turvallisesti Kubernetes-klusterissa. Harjoittelet Docker ja Kubernetes kehittäjille-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Docker ja Kubernetes kehittäjille-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Docker ja Kubernetes kehittäjille-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”Roolipohjainen pääsynhallinta (RBAC)”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Docker ja Kubernetes kehittäjille-oppitunnilla?
Kyllä. Jokainen Docker ja Kubernetes kehittäjille-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Roolipohjainen pääsynhallinta (RBAC)
- Podien tietoturva ja imagejen skannaus
- Kubernetes-verkkoliikenteen suojaaminen
- Secret-resurssien turvallinen hallinta ulkoisilla salaisuussäilöillä