Zustimmung zum Aufnehmen im Zwischenspeicher

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.

  1. 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.

    # 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"
          }
        }
      }
  2. 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.

Hinweis:

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

Adobe-Logo

Bei Ihrem Konto anmelden