Github user benchristel commented on a diff in the pull request:

    https://github.com/apache/incubator-hawq/pull/1379#discussion_r201875409
  
    --- Diff: 
pxf/pxf-service/src/main/java/org/apache/hawq/pxf/service/servlet/SecurityServletFilter.java
 ---
    @@ -64,21 +75,28 @@ public void init(FilterConfig filterConfig) throws 
ServletException {
          * @param chain filter chain
          */
         @Override
    -    public void doFilter(final ServletRequest request, final 
ServletResponse response, final FilterChain chain) throws IOException, 
ServletException {
    +    public void doFilter(final ServletRequest request, final 
ServletResponse response, final FilterChain chain)
    +            throws IOException, ServletException {
     
             if (SecureLogin.isUserImpersonationEnabled()) {
     
                 // retrieve user header and make sure header is present and is 
not empty
    -            final String user = ((HttpServletRequest) 
request).getHeader(USER_HEADER);
    -            if (user == null) {
    -                throw new IllegalArgumentException(MISSING_HEADER_ERROR);
    -            } else if (user.trim().isEmpty()) {
    -                throw new IllegalArgumentException(EMPTY_HEADER_ERROR);
    +            final String user = getHeaderValue(request, USER_HEADER);
    +            String transactionId = getHeaderValue(request, 
TRANSACTION_ID_HEADER);
    --- End diff --
    
    @lavjain pointed out that the default value for `required` is `true`. Maybe 
it's better to be explicit, though.


---

Reply via email to