Alon Bar-Lev has posted comments on this change.

Change subject: aaa: Intorduce filters
......................................................................


Patch Set 7:

(7 comments)

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

Line 27:         HttpServletRequest req = (HttpServletRequest) request;
Line 28:         HttpSession session = req.getSession();
Line 29:         //If there is an attempt to perform basic authentication and 
there is an
Line 30:         //error in fetching the credentials - return UNAUTHORIZED 
error code
Line 31:         //In other cases - continue to the next filter
is this comment relevant?
Line 32:         if (!FiltersHelper.isAuthenticated(req)) {
Line 33:             chain.doFilter(request, response);
Line 34:             String headerValue = req.getHeader("Authorization");
Line 35:             if (headerValue != null && 
headerValue.startsWith("Basic")) {


Line 31:         //In other cases - continue to the next filter
Line 32:         if (!FiltersHelper.isAuthenticated(req)) {
Line 33:             chain.doFilter(request, response);
Line 34:             String headerValue = req.getHeader("Authorization");
Line 35:             if (headerValue != null && 
headerValue.startsWith("Basic")) {
"Basic "
Line 36:                 String credentials = 
headerValue.substring("Basic".length()).trim();
Line 37:                 String userPass = new 
String(Base64.decodeBase64(credentials), Charset.defaultCharset().toString());
Line 38:                 String[] creds = userPass.split(":", 2);
Line 39:                 if (creds != null && creds.length == 2) {


Line 32:         if (!FiltersHelper.isAuthenticated(req)) {
Line 33:             chain.doFilter(request, response);
Line 34:             String headerValue = req.getHeader("Authorization");
Line 35:             if (headerValue != null && 
headerValue.startsWith("Basic")) {
Line 36:                 String credentials = 
headerValue.substring("Basic".length()).trim();
you do not need to trim, the base64 should eat these.
Line 37:                 String userPass = new 
String(Base64.decodeBase64(credentials), Charset.defaultCharset().toString());
Line 38:                 String[] creds = userPass.split(":", 2);
Line 39:                 if (creds != null && creds.length == 2) {
Line 40:                     storeCredentialsOnSession(session, creds[0], 
creds[1], getSeparator(creds[0]));


Line 36:                 String credentials = 
headerValue.substring("Basic".length()).trim();
Line 37:                 String userPass = new 
String(Base64.decodeBase64(credentials), Charset.defaultCharset().toString());
Line 38:                 String[] creds = userPass.split(":", 2);
Line 39:                 if (creds != null && creds.length == 2) {
Line 40:                     storeCredentialsOnSession(session, creds[0], 
creds[1], getSeparator(creds[0]));
I do not understand why you do not attempt to perform the login here...
Line 41:                 }
Line 42:             }
Line 43:         }
Line 44:         chain.doFilter(request, response);


Line 47: 
Line 48:     private int getSeparator(String qualified) {
Line 49:         return qualified.lastIndexOf("@") != -1
Line 50:                 ? qualified.lastIndexOf("@")
Line 51:                 : qualified.indexOf("\\");
what is the \\?
Line 52:     }
Line 53: 
Line 54:     private void storeCredentialsOnSession(HttpSession session, String 
qualified, String password, int index) {
Line 55:         boolean result = true;


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

Line 17:         public final static String PROFILE_KEY = "profile";
Line 18:         public final static String PASSWORD_KEY = "password";
Line 19:         public final static String AUTH_RECORD_KEY = "auth_record";
Line 20:         public final static String UNAUTHORIZED_KEY = "unauthorized";
Line 21:         public static final String SCHEMES_KEY = "schemes";
keep consistent?
Line 22:     }
Line 23: 
Line 24:     public static BackendLocal getBackend(Context context) {
Line 25: 


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

Line 47:                     log.debug("", ex);
Line 48:                 }
Line 49:             } finally {
Line 50:                 FiltersHelper.closeContext(ctx);
Line 51:                 chain.doFilter(request, response);
continue my previous comment... I think this should be:

 doFilter() {
     try {
     } finally {
     }

     chain.doFilter(request, response);
 }

this way if you throw exception, you get automatic jboss error, and doFilter 
will not be called.
Line 52:             }
Line 53:         }
Line 54:     }
Line 55: 


-- 
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: 7
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Yair Zaslavsky <yzasl...@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: 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