Remove Tabs, per Jococo
[aaf/authz.git] / auth / auth-gui / src / main / java / org / onap / aaf / auth / gui / Display.java
index c25d664..24262e8 100644 (file)
@@ -26,6 +26,7 @@ import java.util.Enumeration;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.onap.aaf.auth.common.Define;
 import org.onap.aaf.auth.env.AuthzTrans;
 import org.onap.aaf.auth.rserv.HttpCode;
 import org.onap.aaf.auth.rserv.HttpMethods;
@@ -98,7 +99,9 @@ public class Display {
                         for (int i=0; i<slots.length;++i) {
                             int idx = fields[i].indexOf("[]");
                             if (idx<0) { // single value
-                                trans.put(slots[i], req.getParameter(fields[i]));
+                                if(asUser(trans, req,fields[i])) {
+                                    trans.put(slots[i], req.getParameter(fields[i]));
+                                }
                             } else { // multi value
                                 String[] array = new String[30];
                                 String field=fields[i].substring(0, idx);
@@ -125,6 +128,16 @@ public class Display {
                         page.replay(context,trans,resp.getOutputStream(),"general");
                     }
                     
+                    /**
+                     * When the field is "as_user", make sure permission is granted
+                     */
+                    private boolean asUser(AuthzTrans trans, HttpServletRequest req, String field) {
+                        if("as_user".equals(field)) {
+                            return req.isUserInRole(Define.ROOT_NS()+"|access|*|*");
+                        }
+                        return true;
+                    }
+
                     @Override
                     public boolean no_cache() {
                         return no_cache;