Yair Zaslavsky has posted comments on this change.

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


Patch Set 22:

(11 comments)

http://gerrit.ovirt.org/#/c/28022/22/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 15:         public final static String REQUEST_SCHEMES_KEY = "schemes";
Line 16:         public final static String REQUEST_PROFILE_KEY = "profile";
Line 17:         public static final String SESSION_APPLICATION_MODE_KEY = 
"app_mode";
Line 18:         public static final String REQUEST_USER_KEY = "user";
Line 19:         public static final String REQUEST_ALREADY_LOGGED_OUT_KEY = 
"already_logged_out";
> I'll check.
Done
Line 20:     }
Line 21: 
Line 22:     public static BackendLocal getBackend(Context context) {
Line 23: 


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

> it is not force login, but enforce authenticated or anything similar. it do
Done
Line 1: package org.ovirt.engine.core.aaa.filters;
Line 2: 
Line 3: import java.io.IOException;
Line 4: import java.util.Arrays;


Line 49:             for (String scheme: allSchemes) {
Line 50:                 if (scheme.equals("Basic")) {
Line 51:                     if (realmInfo != null) {
Line 52:                         scheme += realmInfo;
Line 53:                     }
> why can't we have the entire string as init parameter?
Done
Line 54:                 }
Line 55:                res.setHeader("WWW-Authenticate", scheme);
Line 56:             }
Line 57:             res.sendError(HttpServletResponse.SC_UNAUTHORIZED);


Line 55:                res.setHeader("WWW-Authenticate", scheme);
Line 56:             }
Line 57:             res.sendError(HttpServletResponse.SC_UNAUTHORIZED);
Line 58:         } else {
Line 59:             chain.doFilter(request, response);
> i'll do that, but don't we prefer to have the code of chain.doFilter as lat
Done
Line 60:         }
Line 61: 
Line 62: 
Line 63:     }


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

Line 72:                                                     new 
GetConfigurationValueParameters(ConfigurationValues.ApplicationMode,
Line 73:                                                             
ConfigCommon.defaultConfigurationVersion));
Line 74:                             if (result.getSucceeded()) {
Line 75:                                 SetDataOnSessionParameters 
setDataParams = new SetDataOnSessionParameters(
Line 76:                                         
FiltersHelper.Constants.SESSION_APPLICATION_MODE_KEY,
> hmm... this is different session, use different prefix
Done
Line 77:                                         ApplicationMode.from((Integer) 
result.getReturnValue()
Line 78:                                                 ));
Line 79:                                 
setDataParams.setSessionId(engineSessionId);
Line 80:                                 
FiltersHelper.getBackend(context).runAction(VdcActionType.SetDataOnSession,


Line 73:                                                             
ConfigCommon.defaultConfigurationVersion));
Line 74:                             if (result.getSucceeded()) {
Line 75:                                 SetDataOnSessionParameters 
setDataParams = new SetDataOnSessionParameters(
Line 76:                                         
FiltersHelper.Constants.SESSION_APPLICATION_MODE_KEY,
Line 77:                                         ApplicationMode.from((Integer) 
result.getReturnValue()
> why can't the login do that and store it in session? what's so special that
i'll change.
Line 78:                                                 ));
Line 79:                                 
setDataParams.setSessionId(engineSessionId);
Line 80:                                 
FiltersHelper.getBackend(context).runAction(VdcActionType.SetDataOnSession,
Line 81:                                         setDataParams);


Line 75:                                 SetDataOnSessionParameters 
setDataParams = new SetDataOnSessionParameters(
Line 76:                                         
FiltersHelper.Constants.SESSION_APPLICATION_MODE_KEY,
Line 77:                                         ApplicationMode.from((Integer) 
result.getReturnValue()
Line 78:                                                 ));
Line 79:                                 
setDataParams.setSessionId(engineSessionId);
> why isn't this in constructor as well?
Done
Line 80:                                 
FiltersHelper.getBackend(context).runAction(VdcActionType.SetDataOnSession,
Line 81:                                         setDataParams);
Line 82:                             }
Line 83: 


Line 83: 
Line 84:                         }
Line 85:                     } finally {
Line 86:                         context.close();
Line 87:                     }
> doFilter=true
Done
Line 88:                 }
Line 89:             }
Line 90:         } catch (Exception ex) {
Line 91:             exceptionOccurred = true;


http://gerrit.ovirt.org/#/c/28022/22/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 70:                     try {
Line 71:                         VdcActionParametersBase params = new 
VdcActionParametersBase();
Line 72:                         params.setSessionId(engineSessionId);
Line 73:                         
FiltersHelper.getBackend(ctx).runAction(VdcActionType.LogoutBySession, params);
Line 74:                         session.invalidate();
> just invalidate session and logout, remove the attribute of session id, no 
Well, with REST-API logout may also be called (regardless of persistent auth or 
not) when there are "async commands" running (what we know as commands running 
SPM async tasks). i'll fix the code there (BackendResource.doNonBlockingAction) 
to perform session invalidation at that point.
Here I will check if the session exists (both http and engine) adnd only if so 
- i will perform logoff.
Line 75:                     } finally {
Line 76:                         ctx.close();
Line 77:                     }
Line 78:                 }


http://gerrit.ovirt.org/#/c/28022/22/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 40:                 if (engineSession != null) {
Line 41:                     ctx = new InitialContext();
Line 42:                     try {
Line 43:                         VdcQueryParametersBase parameters = new 
VdcQueryParametersBase();
Line 44:                         parameters.setSessionId(engineSession);
> why not in constructor?
Done
Line 45: 
Line 46:                         VdcQueryReturnValue returnValue = 
FiltersHelper.getBackend(ctx)
Line 47:                                 
.runPublicQuery(VdcQueryType.ValidateSession, parameters);
Line 48:                         if (!returnValue.getSucceeded()) {


Line 53:                         }
Line 54:                     } finally {
Line 55:                         ctx.close();
Line 56:                     }
Line 57:                 }
> doFilter = true
Done
Line 58:             }
Line 59:         } catch (Exception ex) {
Line 60:             exceptionOccurred = true;
Line 61:             String msg =


-- 
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: 22
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