Um das berechtigungsabhängige Caching zu aktivieren, fügen Sie den folgenden Abschnitt in der Konfigurationsdatei dispatcher.any zu Ihrer Datei hinzu. Die Beispielkonfiguration unten ermöglicht nur die Überprüfung auf HTML-Seiten.
Zielsetzung
Wie aktivieren Sie das berechtigungsabhängige Caching des Disponentenmoduls?
Schritte
Diese Funktion erfordert ein zusätzliches Servlet, das für AEM bereitgestellt wird (Sie müssen ein Servlet codieren, das auf HEAD-Anfragen reagiert und den korrekten HTTP-Code zurückgibt). Nach dem Deployment wird überprüft, ob ein Benutzer auf eine zwischengespeicherte URI zugreifen darf, indem /bin/permissioncheck.html?uri=<handle>
angefordert wird.
-
# Authorization checker: before a page in the cache is delivered, a HEAD # request is sent to the URL specified in 'url' with the query string # '?uri=<page>'. If the response status is 200 (OK), the page is returned # from the cache. Otherwise, the request is forwarded to the render and # its response returned. /auth_checker { # request is sent to this URL with '?uri=<page>' appended /url "/bin/permissioncheck.html" # only the requested pages matching the filter section below are checked, # all other pages get delivered unchecked /filter { /0000 { /glob "*" /type "deny" } /0001 { /glob "*.html" /type "allow" } } # any header line returned from the auth_checker's HEAD request matching # the section below will be returned as well /headers { /0000 { /glob "*" /type "deny" } /0001 { /glob "Set-Cookie:*" /type "allow" } } }
-
Als Nächstes ist die Implementierung und Bereitstellung eines Servlets erforderlich, das auf HEAD-Anfragen reagiert. Gehen Sie wie im unten stehenden Beispiel beschrieben vor. Beachten Sie, dass eine 200-Antwort bedeutet, dass der Benutzer die Datei direkt vom Dispatcher-Cache abrufen kann. Ein anderer Status als 200 bedeutet, dass die Anfrage nicht vom Cache bedient wird.
Unten finden Sie einen Beispielcode, der das Servlet für AEM 6 implementiert (dank Dominique):
[1] Beispielcode
Beispielcode für das Servlet für berechtigungsabhängiges Caching. Das unten stehende Servlet antwortet auf HEAD-Anfragen mit einer 200-Antwort, wenn der authentifizierte Benutzer Zugriff auf die Anzeige der spezifizierten URI hat.
Beispielcode für das Servlet für berechtigungsabhängiges Caching. Das unten stehende Servlet antwortet auf HEAD-Anfragen mit einer 200-Antwort, wenn der authentifizierte Benutzer Zugriff auf die Anzeige der spezifizierten URI hat.
Gilt für
Dispatcher 4.0.2+ und AEM 6.x
Bei Ihrem Konto anmelden