2

古い EJB 1.1/webwork/jboss アプリに Active Directory 認証を実装しています。このコードを AD の API メソッドに置き換えたところ、ログインするとすぐにアプリケーションがタイムアウトになりました。ここに以下のコードがあります。

紀元前:

AuthenticationManager securityMgr = (AuthenticationManager) securityCtx.lookup("securityMgr");
  SimplePrincipal principal = new SimplePrincipal(_username);
  char[] passwordChars = null;
     if (_password != null)
         passwordChars = _password.toCharArray();
  securityMgr.isValid(principal, passwordChars);

広告の後:

UserInfo userInfo = com.authenticate.SingleSignOn.userAuthentication ("https://urllink/webservice.asmx/userAuthentication", _username, _password, "appname", "DEV", isNotExternal);

ログインするとすぐに、以下のコードを持つページにリダイレクトされます

 <META HTTP-EQUIV="Refresh" CONTENT="0; URL=/app/login.begin.action">

これにより、次の Java コードに移動します

if (!getRequest().getSession().isNew()) {
            getRequest().getSession().invalidate();
}
return SUCCESS:  ( In webwork it will take to waht ever page you put for success in properties file here it is login page)

問題は、AD を使用してログインするとすぐに、ログイン ページにリダイレクトされることです。ここで何かが足りないかどうか知りたかったので、正しい方向に向けてください。

4

1 に答える 1