Autorisations pilotées par les métadonnées metadata-driven-permissions

Les autorisations pilotées par les métadonnées sont une fonctionnalité utilisée pour permettre aux décisions de contrôle d’accès sur l’instance de création AEM Assets d’être basées sur les propriétés de métadonnées des ressources plutôt que sur la structure de dossiers. Grâce à cette fonctionnalité, vous pouvez définir des politiques de contrôle d’accès qui évaluent des attributs tels que le statut et le type de ressource, ou toute propriété de métadonnées personnalisée que vous définissez.

Prenons un exemple. Les personnes membres de l’équipe créative chargent leur travail dans AEM Assets vers le dossier associé à la campagne. Il peut s’agir d’une ressource en cours qui n’a pas été approuvée pour utilisation. Nous voulons nous assurer que les personnes spécialisées dans le marketing ne voient que les ressources approuvées pour cette campagne. Nous pouvons utiliser la propriété de métadonnées pour indiquer qu’une ressource a été approuvée et peut être utilisée par les personnes spécialisées dans le marketing.

Fonctionnement

L’activation des autorisations pilotées par les métadonnées implique de définir quelles propriétés de métadonnées de ressource vont générer des restrictions d’accès, telles que « statut » ou « marque ». Ces propriétés peuvent ensuite être utilisées pour créer des entrées de contrôle d’accès qui spécifient quels groupes d’utilisateurs et d’utilisatrices ont accès aux ressources avec des valeurs de propriété spécifiques.

Conditions préalables

L’accès à un environnement AEM as a Cloud Service mis à jour vers la dernière version est requis pour configurer des autorisations pilotées par les métadonnées.

Configuration OSGi configure-permissionable-properties

Pour mettre en oeuvre des autorisations pilotées par les métadonnées, un développeur doit déployer une configuration OSGi sur AEM as a Cloud Service, qui active des propriétés de métadonnées de ressources spécifiques pour alimenter les autorisations pilotées par les métadonnées.

  1. Déterminez quelles propriétés de métadonnées de ressource seront utilisées pour le contrôle d’accès. Les noms des propriétés sont les noms des propriétés JCR sur la ressource jcr:content/metadata de la ressource. Dans notre cas, il s’agira d’une propriété appelée status.

  2. Créez une configuration OSGi com.adobe.cq.dam.assetmetadatarestrictionprovider.impl.DefaultRestrictionProviderConfiguration.cfg.json dans votre projet Maven AEM.

  3. Collez le fichier JSON suivant dans le fichier créé :

    code language-json
    {
      "restrictionPropertyNames":[
        "status",
        "brand"
      ],
      "enabled":true
    }
    
  4. Remplacez les noms des propriétés par les valeurs requises.

Réinitialisation des autorisations des ressources de base

Avant d’ajouter des entrées de contrôle d’accès basées sur des restrictions, une nouvelle entrée de niveau supérieur doit être ajoutée pour refuser l’accès en lecture à tous les groupes soumis à une évaluation des autorisations pour les ressources (par exemple, « contributeurs et contributrices » ou similaire) :

  1. Accédez à l’écran Outils → Sécurité → Autorisations
  2. Sélectionnez le groupe Contributeurs (ou tout autre groupe personnalisé auquel tous les groupes d’utilisateurs appartiennent)
  3. Cliquez sur Ajouter ACE dans le coin supérieur droit de l’écran.
  4. Sélectionnez /content/dam pour Path
  5. Saisissez jcr:read pour Privilèges
  6. Sélectionnez Deny pour Type d’autorisation
  7. Sous Restrictions, sélectionnez rep:ntNames et saisissez dam:Asset comme Valeur de restriction.
  8. Cliquez sur Enregistrer

Refuser l’accès

Accorder l’accès aux ressources par métadonnées

Il est désormais possible d’ajouter des entrées de contrôle d’accès pour accorder un accès en lecture aux groupes d’utilisateurs en fonction des valeurs de propriété de métadonnées de ressource configurée.

  1. Accédez à l’écran Outils → Sécurité → Autorisations
  2. Sélectionner les groupes d’utilisateurs qui doivent avoir accès aux ressources
  3. Cliquez sur Ajouter ACE dans le coin supérieur droit de l’écran.
  4. Sélectionnez /content/dam (ou un sous-dossier) pour Path
  5. Saisissez jcr:read pour Privilèges
  6. Sélectionnez Allow pour Type d’autorisation
  7. Sous Restrictions, sélectionnez l’un des noms de propriétés de métadonnées de ressource configurées dans la configuration OSGi.
  8. Saisissez la valeur de propriété de métadonnées requise dans le champ Restriction Value
  9. Cliquez sur l’icône + pour ajouter la restriction à l’entrée de contrôle d’accès.
  10. Cliquez sur Enregistrer

Autorisation d’accès

Autorisations pilotées par les métadonnées en vigueur

Le dossier d’exemple contient quelques ressources.

Vue d’administration

Une fois que vous avez configuré les autorisations et défini les propriétés de métadonnées de ressource en conséquence, les utilisateurs et utilisatrices (dans notre cas, les personnes spécialisées dans le marketing) ne verront que la ressource approuvée.

Vue des personnes spécialisées dans le marketing

Avantages et considérations

Les avantages des autorisations gérées par les métadonnées incluent :

  • Contrôle précis de l’accès aux ressources en fonction d’attributs spécifiques.
  • Découplage des politique de contrôle d’accès de la structure de dossiers, ce qui permet une organisation des ressources plus flexible.
  • Possibilité de définir des règles de contrôle d’accès complexes basées sur plusieurs propriétés de métadonnées.
NOTE
Il est important de noter :
  • Les propriétés de métadonnées sont évaluées par rapport aux restrictions à l’aide de l’ égalité de chaîne (=) (d’autres types de données ou opérateurs ne sont pas encore pris en charge, pour les propriétés supérieures à (>) ou de date).
  • Pour autoriser plusieurs valeurs pour une propriété de restriction, vous pouvez ajouter des restrictions supplémentaires à l’entrée de contrôle d’accès en sélectionnant la même propriété dans la liste déroulante « Sélectionner un type » et en saisissant une nouvelle valeur de restriction (par exemple, status=approved, status=wip) et cliquez sur « + » pour ajouter la restriction à l’entrée.
    Autoriser plusieurs valeurs
  • Les restrictions AND sont prises en charge, par le biais de plusieurs restrictions dans une seule entrée de contrôle d’accès avec différents noms de propriété (par exemple, status=approved, brand=Adobe) seront évaluées comme condition AND, c’est-à-dire que le groupe d’utilisateurs sélectionné se verra accorder un accès en lecture aux ressources avec status=approved AND brand=Adobe.
    Autoriser plusieurs restrictions
  • Les restrictions OR sont prises en charge en ajoutant une nouvelle entrée de contrôle d’accès avec une restriction de propriété de métadonnées qui établit une condition OR pour les entrées, par exemple une entrée unique avec restriction status=approved et une entrée unique avec brand=Adobe sera évaluée comme status=approved OR brand=Adobe.
    Autoriser plusieurs restrictions
recommendation-more-help
a483189e-e5e6-49b5-a6dd-9c16d9dc0519