Para habilitar o armazenamento em cache sensível a permissão, adicione a seguinte seção ao farm no arquivo de configuração dispatcher.any. A configuração de amostra abaixo permite verificar somente páginas HTML.
Objetivo
Como habilitar o recurso de armazenamento de cache sensível a permissão do módulo do dispatcher.
Etapas
Esse recurso requer um servlet adicional, que será implementado no AEM (você precisa codificar um servlet que responda às solicitações HEAD para retornar o código HTTP correto). Após a implantação, o processo de verificar se um usuário tem permissão para acessar alguma URL em cache é feito solicitando /bin/permissioncheck.html?uri=<handle>
.
-
# 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" } } }
-
Em seguida, implemente um servlet como o exemplo abaixo, que responda às solicitações HEAD. Observe que uma resposta 200 significa que o usuário tem acesso para recuperar o arquivo diretamente do cache do dispatcher. Qualquer outro status, exceto 200, significa que a solicitação não será atendida a partir do cache.
Abaixo está o código de amostra que implementa o servlet para o AEM 6 (graças a Dominique):
[1] Código de amostra
Código de amostra para o servlet de armazenamento em cache sensível a permissão. O servlet abaixo responde às solicitações HEAD com uma resposta 200 se o usuário autenticado tiver acesso para visualizar a URL especificada.
Código de amostra para o servlet de armazenamento em cache sensível a permissão. O servlet abaixo responde às solicitações HEAD com uma resposta 200 se o usuário autenticado tiver acesso para visualizar a URL especificada.
Aplica-se a
Dispatcher 4.0.2+ e AEM 6.x
Fazer logon em sua conta