- Configure ACR name: zdlas in azure-pipelines.yml - Add Azure Container Registry documentation and guides - Add scripts for ACR creation and image building - Add docker-compose config for ACR deployment - Remove temporary Excel lock file
206 lines
6.3 KiB
Markdown
206 lines
6.3 KiB
Markdown
# Azure Container Registry - Role Assignment Permissions Mode
|
|
|
|
## 🎯 Aanbeveling voor Jouw Situatie
|
|
|
|
**Voor Zuyderland CMDB GUI (20 gebruikers, corporate tool, productie):**
|
|
|
|
### ✅ **RBAC Registry Permissions** (Aanbevolen) ⭐
|
|
|
|
**Waarom:**
|
|
- ✅ Eenvoudiger te beheren
|
|
- ✅ Voldoende voor jouw use case
|
|
- ✅ Minder complexiteit
|
|
- ✅ Standaard keuze voor de meeste scenario's
|
|
|
|
---
|
|
|
|
## 📊 Opties Vergelijking
|
|
|
|
### Optie 1: **RBAC Registry Permissions** ⭐ **AANBEVOLEN**
|
|
|
|
**Hoe het werkt:**
|
|
- Permissions worden ingesteld op **registry niveau**
|
|
- Alle repositories binnen de registry delen dezelfde permissions
|
|
- Gebruikers hebben toegang tot alle repositories of geen
|
|
|
|
**Voordelen:**
|
|
- ✅ **Eenvoudig** - Minder complexiteit
|
|
- ✅ **Makkelijk te beheren** - Eén set permissions voor de hele registry
|
|
- ✅ **Voldoende voor de meeste scenario's** - Perfect voor jouw situatie
|
|
- ✅ **Standaard keuze** - Meest gebruikte optie
|
|
|
|
**Nadelen:**
|
|
- ❌ Minder flexibel - Kan niet per repository permissions instellen
|
|
- ❌ Alle repositories hebben dezelfde toegang
|
|
|
|
**Wanneer gebruiken:**
|
|
- ✅ **Jouw situatie** - 20 gebruikers, corporate tool
|
|
- ✅ Kleine tot middelgrote teams
|
|
- ✅ Alle repositories hebben dezelfde toegangsvereisten
|
|
- ✅ Eenvoudige permission structuur gewenst
|
|
|
|
**Voorbeeld:**
|
|
- Alle developers hebben toegang tot alle repositories
|
|
- Alle CI/CD pipelines hebben toegang tot alle repositories
|
|
- Geen per-repository verschillen nodig
|
|
|
|
---
|
|
|
|
### Optie 2: **RBAC Registry + ABAC Repository Permissions**
|
|
|
|
**Hoe het werkt:**
|
|
- Permissions op **registry niveau** (RBAC)
|
|
- **Extra** permissions op **repository niveau** (ABAC - Attribute-Based Access Control)
|
|
- Kan per repository verschillende permissions instellen
|
|
|
|
**Voordelen:**
|
|
- ✅ **Flexibeler** - Per repository permissions mogelijk
|
|
- ✅ **Granular control** - Verschillende teams kunnen verschillende repositories hebben
|
|
- ✅ **Enterprise features** - Voor complexe organisaties
|
|
|
|
**Nadelen:**
|
|
- ❌ **Complexer** - Meer configuratie nodig
|
|
- ❌ **Moeilijker te beheren** - Meerdere permission levels
|
|
- ❌ **Meer overhead** - Meer tijd nodig voor setup en onderhoud
|
|
|
|
**Wanneer gebruiken:**
|
|
- ✅ Grote organisaties met meerdere teams
|
|
- ✅ Verschillende repositories hebben verschillende toegangsvereisten
|
|
- ✅ Compliance requirements die granular control vereisen
|
|
- ✅ Multi-tenant scenarios
|
|
|
|
**Voorbeeld:**
|
|
- Team A heeft alleen toegang tot repository A
|
|
- Team B heeft alleen toegang tot repository B
|
|
- CI/CD pipeline heeft toegang tot alle repositories
|
|
- Externe partners hebben alleen toegang tot specifieke repositories
|
|
|
|
---
|
|
|
|
## 🔍 Jouw Situatie Analyse
|
|
|
|
**Jouw setup:**
|
|
- 2 repositories: `zuyderland-cmdb-gui/backend` en `zuyderland-cmdb-gui/frontend`
|
|
- 20 gebruikers (klein team)
|
|
- Corporate tool (interne gebruikers)
|
|
- Productie omgeving
|
|
|
|
**Permission vereisten:**
|
|
- ✅ Alle teamleden hebben toegang tot beide repositories
|
|
- ✅ CI/CD pipeline heeft toegang tot beide repositories
|
|
- ✅ Geen per-repository verschillen nodig
|
|
- ✅ Eenvoudige beheer gewenst
|
|
|
|
**Conclusie:** ✅ **RBAC Registry Permissions is perfect!**
|
|
|
|
---
|
|
|
|
## 📋 Checklist: Welke Keuze?
|
|
|
|
### Kies **RBAC Registry Permissions** als:
|
|
- [x] Je <50 gebruikers hebt ✅
|
|
- [x] Alle repositories dezelfde toegang hebben ✅
|
|
- [x] Je eenvoudige beheer wilt ✅
|
|
- [x] Je geen per-repository verschillen nodig hebt ✅
|
|
- [x] Je een klein tot middelgroot team hebt ✅
|
|
|
|
**→ Jouw situatie: ✅ Kies RBAC Registry Permissions!**
|
|
|
|
### Kies **RBAC Registry + ABAC Repository Permissions** als:
|
|
- [ ] Je >100 gebruikers hebt
|
|
- [ ] Verschillende repositories verschillende toegang nodig hebben
|
|
- [ ] Je granular control nodig hebt
|
|
- [ ] Je multi-tenant scenario hebt
|
|
- [ ] Je compliance requirements hebt die granular control vereisen
|
|
|
|
---
|
|
|
|
## 🔄 Kan Ik Later Wisselen?
|
|
|
|
**⚠️ Belangrijk:**
|
|
- Deze keuze is **permanent** en kan **niet meer worden gewijzigd** na aanmaken van de registry!
|
|
- Als je later ABAC nodig hebt, moet je een nieuwe registry aanmaken
|
|
|
|
**Aanbeveling:**
|
|
- Start met **RBAC Registry Permissions** (eenvoudigst)
|
|
- Als je later granular control nodig hebt, overweeg dan een nieuwe registry met ABAC
|
|
- Voor jouw situatie is RBAC Registry Permissions voldoende
|
|
|
|
---
|
|
|
|
## 💡 Permission Rollen (RBAC Registry Permissions)
|
|
|
|
Met RBAC Registry Permissions kun je deze rollen toewijzen:
|
|
|
|
### **AcrPull** (Lezen)
|
|
- Images pullen
|
|
- Voor: Developers, CI/CD pipelines
|
|
|
|
### **AcrPush** (Schrijven)
|
|
- Images pushen
|
|
- Voor: CI/CD pipelines, build servers
|
|
|
|
### **AcrDelete** (Verwijderen)
|
|
- Images verwijderen
|
|
- Voor: Administrators, cleanup scripts
|
|
|
|
### **Owner** (Volledig beheer)
|
|
- Alles + registry beheer
|
|
- Voor: Administrators
|
|
|
|
**Voor jouw situatie:**
|
|
- **Developers**: `AcrPull` (images pullen)
|
|
- **CI/CD Pipeline**: `AcrPush` (images pushen)
|
|
- **Administrators**: `Owner` (volledig beheer)
|
|
|
|
---
|
|
|
|
## 🎯 Mijn Aanbeveling
|
|
|
|
**Voor Zuyderland CMDB GUI:**
|
|
|
|
### ✅ **Kies RBAC Registry Permissions** ⭐
|
|
|
|
**Waarom:**
|
|
1. ✅ **Eenvoudig** - Minder complexiteit, makkelijker te beheren
|
|
2. ✅ **Voldoende** - Alle repositories hebben dezelfde toegang (wat je nodig hebt)
|
|
3. ✅ **Standaard** - Meest gebruikte optie, goed gedocumenteerd
|
|
4. ✅ **Perfect voor jouw situatie** - 20 gebruikers, 2 repositories, corporate tool
|
|
|
|
**Je hebt niet nodig:**
|
|
- ❌ Per-repository permissions (alle repositories hebben dezelfde toegang)
|
|
- ❌ Complexe permission structuur (klein team)
|
|
- ❌ Multi-tenant scenarios (corporate tool)
|
|
|
|
**Setup:**
|
|
1. Kies **RBAC Registry Permissions**
|
|
2. Wijs rollen toe aan gebruikers/groepen:
|
|
- Developers → `AcrPull`
|
|
- CI/CD → `AcrPush`
|
|
- Admins → `Owner`
|
|
|
|
**Klaar!** ✅
|
|
|
|
---
|
|
|
|
## 📚 Meer Informatie
|
|
|
|
- [Azure Container Registry RBAC](https://learn.microsoft.com/en-us/azure/container-registry/container-registry-roles)
|
|
- [ACR Permissions Best Practices](https://learn.microsoft.com/en-us/azure/container-registry/container-registry-best-practices)
|
|
- [ABAC Repository Permissions](https://learn.microsoft.com/en-us/azure/container-registry/container-registry-repository-scoped-permissions)
|
|
|
|
---
|
|
|
|
## 🎯 Conclusie
|
|
|
|
**Kies: RBAC Registry Permissions** ⭐
|
|
|
|
Dit is de beste keuze voor:
|
|
- ✅ 20 gebruikers
|
|
- ✅ Corporate tool
|
|
- ✅ 2 repositories (backend + frontend)
|
|
- ✅ Eenvoudige beheer gewenst
|
|
- ✅ Alle repositories hebben dezelfde toegang
|
|
|
|
Je kunt altijd later een nieuwe registry aanmaken met ABAC als je granular control nodig hebt, maar voor jouw situatie is dat niet nodig.
|