Vojtech Szocs has posted comments on this change.

Change subject: Introduction of filters to unify AAA flows for UI and REST-API
......................................................................


Patch Set 47: Code-Review+1

(5 comments)

Some minor comments, looks good otherwise.

I'll still need to test if UI plugin vs. REST API integration works as before.

http://gerrit.ovirt.org/#/c/28022/47/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/EnforceAuthFilter.java
File 
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/EnforceAuthFilter.java:

Line 17: import javax.servlet.http.HttpServletResponse;
Line 18: 
Line 19: public class EnforceAuthFilter implements Filter {
Line 20: 
Line 21:     private List<String> additionalSchemes = new ArrayList<>();
Consider making this field final.
Line 22: 
Line 23:     @Override
Line 24:     public void init(FilterConfig filterConfig) throws 
ServletException {
Line 25:         for (String paramName : 
Collections.list(filterConfig.getInitParameterNames())) {


http://gerrit.ovirt.org/#/c/28022/47/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/InvalidateSessionIfAuthorizationHeaderFilter.java
File 
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/InvalidateSessionIfAuthorizationHeaderFilter.java:

Line 20:     @Override
Line 21:     public void doFilter(ServletRequest request, ServletResponse 
response, FilterChain chain) throws IOException,
Line 22:             ServletException {
Line 23:         HttpServletRequest req = (HttpServletRequest) request;
Line 24:         if ((req.getHeader("Authorization") != null)) {
You can use FiltersHelper.Constants.HEADER_AUTHORIZATION here.
Line 25:                 // No need to pass credentials again - if passed, 
login should be called
Line 26:             HttpSession session = req.getSession(false);
Line 27:             if (session != null) {
Line 28:                 session.invalidate();


http://gerrit.ovirt.org/#/c/28022/47/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/RestApiSessionMgmtFilter.java
File 
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/RestApiSessionMgmtFilter.java:

Line 38: 
Line 39:             chain.doFilter(request, response);
Line 40:             HttpServletRequest req = (HttpServletRequest)request;
Line 41: 
Line 42:             if 
(Collections.list(req.getHeaders("Prefer")).contains("persistent-auth")) {
You can use FiltersHelper.Constants.HEADER_PREFER here.
Line 43:                 HttpSession session = req.getSession();
Line 44:                 try {
Line 45:                     int ttlValue = 
Integer.parseInt(req.getHeader("Session-TTL")) * SECONDS_IN_MINUTE;
Line 46:                     if (ttlValue >= MINIMAL_SESSION_TTL) {


Line 41: 
Line 42:             if 
(Collections.list(req.getHeaders("Prefer")).contains("persistent-auth")) {
Line 43:                 HttpSession session = req.getSession();
Line 44:                 try {
Line 45:                     int ttlValue = 
Integer.parseInt(req.getHeader("Session-TTL")) * SECONDS_IN_MINUTE;
You can use FiltersHelper.Constants.SESSION_TTL here, but since this is REST 
API persistent session feature-specific header name, it can stay like this too, 
it's up to you.
Line 46:                     if (ttlValue >= MINIMAL_SESSION_TTL) {
Line 47:                         session = req.getSession(true);
Line 48:                         session.setMaxInactiveInterval(ttlValue);
Line 49:                     }


http://gerrit.ovirt.org/#/c/28022/47/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/LoginUserParameters.java
File 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/LoginUserParameters.java:

Line 8: 
Line 9:     private static class AuthenticationInformation {
Line 10:         private String loginName;
Line 11:         private String password;
Line 12:         private Object authRecord;
>From GWT client perspective, you could put transient here to explicitly 
>indicate that this field won't be part of GWT RPC serialization policy, and 
>therefore won't be transferred between client and server.

Not sure if above suggestion is acceptable from Java server perspective.
Line 13:     }
Line 14: 
Line 15:     private AuthenticationInformation authInfo;
Line 16: 


-- 
To view, visit http://gerrit.ovirt.org/28022
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ia5536d123b6407acf41b6946dde796bd67d1e073
Gerrit-PatchSet: 47
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Yair Zaslavsky <yzasl...@redhat.com>
Gerrit-Reviewer: Alexander Wels <aw...@redhat.com>
Gerrit-Reviewer: Alon Bar-Lev <alo...@redhat.com>
Gerrit-Reviewer: Barak Azulay <bazu...@redhat.com>
Gerrit-Reviewer: Juan Hernandez <juan.hernan...@redhat.com>
Gerrit-Reviewer: Oved Ourfali <oourf...@redhat.com>
Gerrit-Reviewer: Vojtech Szocs <vsz...@redhat.com>
Gerrit-Reviewer: Yair Zaslavsky <yzasl...@redhat.com>
Gerrit-Reviewer: automat...@ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to