Pentaho can't do Login with only ONE user. All other users works fine

536 views Asked by At

I am using Pentaho integrated with other app developed. I am using Multi-Tenancy 1234@test, for example, and I login in pentaho through the app, not directly by pentaho login screen. We use Nginx to Proxy Pentaho. The problem is: All the users login except one. We have around 140 accounts and only one can't do the login. When a try to login a only get a blank page.

I tried to remove the user from pentaho DB and re-included. I tried to change the user password. I checked if the credential passed were right, it were. I discovered that j_security_check is blocking the login. But I dont know why When try to login and press f12, I know it's redirect to pentahos login page saying that occurred a login error, but show only a blank page.(like a display none, im not sure).

Nothing shows in catalina.out. localhost_access_log:

[08/Jul/2019:07:48:44 -0300] "GET /pentaho/CacheExpirationService HTTP/1.0" 200 1469
[08/Jul/2019:07:48:44 -0300] "POST /pentaho/j_spring_security_check HTTP/1.0" 302 -
[08/Jul/2019:07:48:44 -0300] "GET /pentaho/Login?login_error=1 HTTP/1.0" 200 7800

This is all I get from the logs. My user is in pentaho DB.

nginx file:

location /pentaho/ {
                proxy_pass http://IP_PENTAHO:8080/pentaho/;
                }

pentado doLogin() function in PUCLogin.jsp:

function doLogin() {

    // if we have a valid session and we attempt to login on top of it, the server
    // will actually log us out and will not log in with the supplied credentials, you must
    // login again. So instead, if they're already logged in, we bounce out of here to
    // prevent confusion.
    if (<%=loggedIn%>) {
      bounceToReturnLocation();
      return false;
    }

    jQuery.ajax({
      type: "POST",
      url: "j_spring_security_check",
      dataType: "text",
      data: $("#login").serialize(),

      error:function (xhr, ajaxOptions, thrownError){
        if (xhr.status == 404) {
          // if we get a 404 it means login was successful but intended resource does not exist
          // just let it go - let the user get the 404
          bounceToReturnLocation();
          return;
        }
        //Fix for BISERVER-7525
        //parsereerror caused by attempting to serve a complex document like a prd report in any presentation format like a .ppt
        //does not necesarly mean that there was a failure in the login process, status is 200 so just let it serve the archive to the web browser.
        if (xhr.status == 200 && thrownError == 'parsererror') {
          document.getElementById("j_password").value = "";
          bounceToReturnLocation();
          return;
        }
        // fail
        $("#loginError").show();
        $("#loginError button").focus();
      },

      success:function(data, textStatus, jqXHR){
        if (data.indexOf("j_spring_security_check") != -1) { # HERE I GOT 1596, NOT -1
          // fail
          $("#loginError").show();
          $("#loginError button").focus();
          return false;
        } else {
          document.getElementById("j_password").value = "";
          bounceToReturnLocation();
        }
      }
    });
    return false;
  }

Like I said, this is the only user that cant login, and I'm not figuring out why. The DB i'm using in pentaho is Postgresql.

I hope you guys can help me out, thanks in advice. Best regards

0

There are 0 answers