Apache Shindigで認証情報を利用したFilterを追加する

Shindigを利用している場合、認証情報はSecurityTokenを利用して受け渡しされます。

この情報は、ShindigのAuthFilterを通過した時にHttpServletRequest内に注入されます。

そこで、この情報を利用したFilterを作りたい場合、そのFilterをAuthFilter以降に配置することで実現できます。

つまり、web.xmlの該当部分は以下の様になるはずです。

<filter>
  <filter-name>authFilter</filter-name>
  <filter-class>org.apache.shindig.auth.AuthenticationServletFilter</filter-class>
</filter>
<filter>
  <filter-name>someFilter</filter-name>
  <filter-class>foo.bar.SomeFilter</filter-class>
</filter>

<filter-mapping>
  <filter-name>authFilter</filter-name>
  <url-pattern>/api/*</url-pattern>
</filter-mapping>

<filter-mapping>
  <filter-name>ipFilter</filter-name>
  <url-pattern>/api/*</url-pattern>
</filter-mapping>

参考