Skip to content

Collections API - Résumé des Permissions Requises

Résumé Rapide

Pour que pvw collections create fonctionne avec un Service Principal (SP), vous avez besoin de DEUX niveaux de permissions:

1. Azure RBAC (Niveau Souscription)

Le SP doit avoir le rôle Contributor ou Owner sur la ressource Purview Account

# Via Azure CLI
az role assignment create \
  --role "Contributor" \
  --assignee-object-id <SP_OBJECT_ID> \
  --scope /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RG>/providers/Microsoft.Purview/accounts/<ACCOUNT>

2. Rôles Purview (Niveau Purview)

Le SP doit avoir l'un de ces rôles Purview: - ✅ Purview Data Source Administrator (recommandé) - ✅ Collection Administrator - ❌ Purview Data Curator (NON - lecture seule) - ❌ Purview Data Reader (NON - lecture seule)

Via Azure Portal: 1. Allez à Purview Account > Access Control (IAM) 2. Cliquez "+ Add" > "Add role assignment" 3. Sélectionnez "Purview Data Source Administrator" 4. Sélectionnez votre Service Principal 5. Cliquez "Review + Assign"

Checklist Complète

✓ Vérifier Azure RBAC role
  az role assignment list --assignee-object-id <SP_OBJECT_ID> --scope <RESOURCE_ID>

✓ Vérifier que le SP est Cloud Administrator dans Purview
  (Via Portal: Purview > Data Plane Access > Collections tab)

✓ Vérifier les env variables
  echo $AZURE_CLIENT_ID
  echo $AZURE_TENANT_ID
  echo $PURVIEW_ACCOUNT_NAME (format: account-name ONLY, pas d'URL)

✓ Attendre 5-10 minutes pour la propagation

✓ Tester avec: pvw collections list

✓ Si encore 403: az logout && az login (rafraîchir l'auth)

Diagnostic Automatique

Utilisez les scripts fournis pour diagnostiquer automatiquement:

PowerShell:

./scripts/diagnose_collections_permissions.ps1

Python:

python scripts/diagnose_collections_permissions.py

Causes Courantes de "HTTP 403"

Cause Solution
Rôle Purview manquant Ajouter "Purview Data Source Administrator"
Azure RBAC insuffisant Upgrade vers "Contributor" ou "Owner"
Permissions pas propagées Attendre 5-10 minutes et réessayer
Format PURVIEW_ACCOUNT_NAME Utiliser "my-account" PAS "my-account.purview.azure.com"
SP pas enregistré en tenant az ad sp create --id 73c2949e-da2d-457a-9607-fcc665198967

Permissions Minimales

Azure Subscription Level (REQUIRED):

Microsoft.Purview/accounts/read
Microsoft.Purview/accounts/write
Microsoft.Authorization/roleAssignments/read

Purview Data Plane (REQUIRED):

Collections: Create, Read, Update, Delete
Permissions: Read, Write

Commande Test

# Vérifier que tout fonctionne
pvw collections create \
  --collection-name "test-$(date +%s)" \
  --friendly-name "Test Collection" \
  --description "Test de permissions"

Documentation Complète

Voir le fichier collections-permissions.md pour les détails complets avec: - Scripts PowerShell et Bash complets - Exemples détaillés pour chaque permission - Procédures de dépannage avancées - Références Microsoft officiales