Anzeige der Aktion „Löschen“ für Experience Fragment in Adobe Experience Manager Sites nach Gruppe einschränken

In diesem Artikel wird erläutert, wie Sie steuern können, welche Benutzergruppen die Löschaktion in der Haupt-Experience Fragment-Konsole sehen. Verwenden Sie eine Überlagerung unter /apps mit einer gruppenbasierten granite:rendercondition, um die Sichtbarkeit der Aktion zu steuern. Verwenden Sie Repository-Berechtigungen separat, um einzuschränken, wer Experience Fragments löschen kann. Um dies zu beheben, überlagern Sie die Aktion „main-console“, konfigurieren Sie die Bedingung für die Gruppenwiedergabe und testen Sie die Sichtbarkeit und Löschberechtigungen separat.

Beschreibung description

Umgebung

Adobe Experience Manager Sites Experience Fragment-Konsole in AEM 6.5 oder AEM as a Cloud Service. Die Implementierungsschritte unterscheiden sich je nach Bereitstellung.

Problem/Symptome

  • Die Löschaktion für Experience Fragments ist für Benutzende unabhängig von der Gruppenmitgliedschaft in der Hauptkonsole sichtbar.
  • Sie müssen steuern, welche Gruppen die Löschaktion sehen.

Ursache

Die Haupt-Experience Fragment-Konsole definiert ihre Auswahl-Symbolleiste Löschaktion unter /libs/cq/experience-fragments/content/experience-fragments/jcr:content/actions/selection/deletepage. Eine gruppenbasierte granite:rendercondition in einer Überlagerung unter /apps steuert, ob die Aktion gerendert wird. Dies steuert nur die Sichtbarkeit. Repository-Berechtigungen steuern, ob ein Benutzer löschen kann. In dieser Anleitung wird die Hauptaktion der Konsole beschrieben. Validieren Sie das Suchergebnisverhalten separat für die AEM-Zielversion.

Lösung resolution

Gehen Sie wie folgt vor, um die Sichtbarkeit der Löschaktion in der Hauptkonsole von Experience Fragment zu steuern:

  1. Suchen Sie den Aktionsknoten Löschen: /libs/cq/experience-fragments/content/experience-fragments/jcr:content/actions/selection/deletepage. Verwenden von CRXDE Lite in AEM 6.5. Für AEM as a Cloud Service ist CRXDE Lite nicht verfügbar. Verwenden Sie die lokale AEM SDK oder Projektquelle für die Entwicklung.
  2. Erstellen Sie eine Überlagerung im entsprechenden /apps: /apps/cq/experience-fragments/content/experience-fragments/jcr:content/actions/selection/deletepage. Fügen Sie in AEM as a Cloud Service die Überlagerung in Ihre Projektquelle ein und stellen Sie sie über die Cloud Manager CI/CD-Pipeline bereit.
  3. Fügen Sie im überlagerten Knoten einen untergeordneten Knoten mit dem Namen granite:rendercondition hinzu oder konfigurieren Sie ihn.
  4. Konfigurieren Sie die Render-Bedingung für die Benutzergruppen, denen die Löschaktion angezeigt werden soll. Verwenden Sie eine benutzerdefinierte gruppenbasierte Rendering-Bedingung. Siehe Beschränken einer Symbolleistenaktion auf eine bestimmte Gruppe.
  5. Speichern oder Bereitstellen der Änderungen. Testen Sie die Hauptkonsolenaktion mit einem Benutzer, der zu einer zulässigen Gruppe gehört, und einem Benutzer, der nicht zu einer zulässigen Gruppe gehört. Hinweis: Die Render-Bedingung steuert die Sichtbarkeit der Aktion; sie erteilt oder verweigert keine Löschberechtigungen. Konfigurieren Sie Repository-Berechtigungen separat, wenn Benutzer Experience Fragments nicht löschen dürfen. In diesem Verfahren wird die Hauptkonsolenaktion behandelt. Überprüfen Sie das Suchergebnisverhalten separat für die AEM-Zielversion.

So identifizieren Sie den Knoten, der einer UI-Schaltfläche entspricht:

  1. Verwenden Sie die Entwickler-Tools Ihres Browsers, um die Schaltfläche zu überprüfen und ihr Klassenattribut zu notieren, z. B. cq-siteadmin-admin-actions-delete-activator.
  2. Verwenden Sie in AEM 6.5 CRXDE Lite, um nach der Klasse zu suchen. Suchen Sie für AEM as a Cloud Service die Projektquelle oder überprüfen Sie das Repository mit einem unterstützten schreibgeschützten Tool.
  3. Überlagern und konfigurieren Sie den Knoten wie oben beschrieben.
recommendation-more-help
experience-cloud-kcs-help-kbarticles