2016-07-22 11 views
3

Ich weiß, ich Caching für Seiten aktivieren kann, die von einem autorisierten Benutzer überCQ-Dispatcher: Wie allowAuthorized verwendet

/allowAuthorized "1" 

im /cache Abschnitt genannt werden.

Aber wenn eine Seite zwischengespeichert wird, wird sie an jeden, der sie aufruft, auch an anonyme Benutzer geliefert. Kann ich irgendwie überprüfen, ob der Benutzer den Inhalt sehen darf oder nicht?

Antwort

2

Werfen Sie einen Blick auf (1).

Sie können einen Abschnitt/auth_checker konfigurieren, die

  • url definiert: url zu einem Skript/Servlet, das mit einer HEAD Anforderung aufgerufen wird, wenn eine gültige Seite angefordert wird. Eine Seite ist gültig, wenn sie im Filterbereich mit /type"allow"
  • filter ist: legt fest, welche Pfade geprüft werden sollen und welche nicht angehakt werden.
  • headers: konfigurieren zusätzliche Header hier, dass im Servlet festgelegt und an das Frontend

Hier ist ein Beispiel-Konfiguration von der Adobe-Online-Dokumentation gehen sollte:

/auth_checker 
    { 
    # request is sent to this URL with '?uri=<page>' appended 
    /url "/bin/permissioncheck" 

    # only the requested pages matching the filter section below are checked, 
    # all other pages get delivered unchecked 
    /filter 
    { 
    /0000 
     { 
     /glob "*" 
     /type "deny" 
     } 
    /0001 
     { 
     /glob "/content/secure/*.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" 
     } 
    } 
    } 

Auf der Seite gibt es Außerdem ein Beispiel-Servlet, mit dem die Berechtigungen des Benutzers in AEM überprüft werden können.

(1): https://docs.adobe.com/docs/en/dispatcher/permissions-cache.html

+1

Coole .. nur warum ist das nicht auf der Haupt Dispatcher Configseite zur Verfügung .. –