fix #1783 spnego 1.1-SNAPSHOT
This commit is contained in:
parent
9a3ab45f63
commit
1a0cc74bd6
4 changed files with 50 additions and 7 deletions
2
pom.xml
2
pom.xml
|
@ -1277,7 +1277,7 @@
|
|||
<dependency>
|
||||
<groupId>org.codelibs</groupId>
|
||||
<artifactId>spnego</artifactId>
|
||||
<version>1.0</version>
|
||||
<version>1.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-codec</groupId>
|
||||
|
|
|
@ -1372,7 +1372,7 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
/** The key of the configuration. e.g. none */
|
||||
String SSO_TYPE = "sso.type";
|
||||
|
||||
/** The key of the configuration. e.g. 0 */
|
||||
/** The key of the configuration. e.g. */
|
||||
String SPNEGO_LOGGER_LEVEL = "spnego.logger.level";
|
||||
|
||||
/** The key of the configuration. e.g. krb5.conf */
|
||||
|
@ -1408,6 +1408,9 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
/** The key of the configuration. e.g. false */
|
||||
String SPNEGO_ALLOW_DELEGATION = "spnego.allow.delegation";
|
||||
|
||||
/** The key of the configuration. e.g. */
|
||||
String SPNEGO_EXCLUDE_DIRS = "spnego.exclude.dirs";
|
||||
|
||||
/** The key of the configuration. e.g. __CLIENT_ID__ */
|
||||
String OIC_CLIENT_ID = "oic.client.id";
|
||||
|
||||
|
@ -5819,14 +5822,14 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
|
||||
/**
|
||||
* Get the value for the key 'spnego.logger.level'. <br>
|
||||
* The value is, e.g. 0 <br>
|
||||
* The value is, e.g. <br>
|
||||
* @return The value of found property. (NotNull: if not found, exception but basically no way)
|
||||
*/
|
||||
String getSpnegoLoggerLevel();
|
||||
|
||||
/**
|
||||
* Get the value for the key 'spnego.logger.level' as {@link Integer}. <br>
|
||||
* The value is, e.g. 0 <br>
|
||||
* The value is, e.g. <br>
|
||||
* @return The value of found property. (NotNull: if not found, exception but basically no way)
|
||||
* @throws NumberFormatException When the property is not integer.
|
||||
*/
|
||||
|
@ -5944,6 +5947,21 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
*/
|
||||
boolean isSpnegoAllowDelegation();
|
||||
|
||||
/**
|
||||
* Get the value for the key 'spnego.exclude.dirs'. <br>
|
||||
* The value is, e.g. <br>
|
||||
* @return The value of found property. (NotNull: if not found, exception but basically no way)
|
||||
*/
|
||||
String getSpnegoExcludeDirs();
|
||||
|
||||
/**
|
||||
* Get the value for the key 'spnego.exclude.dirs' as {@link Integer}. <br>
|
||||
* The value is, e.g. <br>
|
||||
* @return The value of found property. (NotNull: if not found, exception but basically no way)
|
||||
* @throws NumberFormatException When the property is not integer.
|
||||
*/
|
||||
Integer getSpnegoExcludeDirsAsInteger();
|
||||
|
||||
/**
|
||||
* Get the value for the key 'oic.client.id'. <br>
|
||||
* The value is, e.g. __CLIENT_ID__ <br>
|
||||
|
@ -8393,6 +8411,14 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
return is(FessConfig.SPNEGO_ALLOW_DELEGATION);
|
||||
}
|
||||
|
||||
public String getSpnegoExcludeDirs() {
|
||||
return get(FessConfig.SPNEGO_EXCLUDE_DIRS);
|
||||
}
|
||||
|
||||
public Integer getSpnegoExcludeDirsAsInteger() {
|
||||
return getAsInteger(FessConfig.SPNEGO_EXCLUDE_DIRS);
|
||||
}
|
||||
|
||||
public String getOicClientId() {
|
||||
return get(FessConfig.OIC_CLIENT_ID);
|
||||
}
|
||||
|
@ -8851,7 +8877,7 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
defaultMap.put(FessConfig.LDAP_ATTR_GID_NUMBER, "gidNumber");
|
||||
defaultMap.put(FessConfig.LDAP_ATTR_HOME_DIRECTORY, "homeDirectory");
|
||||
defaultMap.put(FessConfig.SSO_TYPE, "none");
|
||||
defaultMap.put(FessConfig.SPNEGO_LOGGER_LEVEL, "0");
|
||||
defaultMap.put(FessConfig.SPNEGO_LOGGER_LEVEL, "");
|
||||
defaultMap.put(FessConfig.SPNEGO_KRB5_CONF, "krb5.conf");
|
||||
defaultMap.put(FessConfig.SPNEGO_LOGIN_CONF, "auth_login.conf");
|
||||
defaultMap.put(FessConfig.SPNEGO_PREAUTH_USERNAME, "username");
|
||||
|
@ -8863,6 +8889,7 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
|
|||
defaultMap.put(FessConfig.SPNEGO_PROMPT_NTLM, "true");
|
||||
defaultMap.put(FessConfig.SPNEGO_ALLOW_LOCALHOST, "true");
|
||||
defaultMap.put(FessConfig.SPNEGO_ALLOW_DELEGATION, "false");
|
||||
defaultMap.put(FessConfig.SPNEGO_EXCLUDE_DIRS, "");
|
||||
defaultMap.put(FessConfig.OIC_CLIENT_ID, "__CLIENT_ID__");
|
||||
defaultMap.put(FessConfig.OIC_CLIENT_SECRET, "__CLIENT_SECRET__");
|
||||
defaultMap.put(FessConfig.OIC_AUTH_SERVER_URL, "https://accounts.google.com/o/oauth2/auth");
|
||||
|
|
|
@ -24,6 +24,7 @@ import javax.servlet.ServletContext;
|
|||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.codelibs.core.io.ResourceUtil;
|
||||
import org.codelibs.core.lang.StringUtil;
|
||||
import org.codelibs.fess.app.web.base.login.ActionResponseCredential;
|
||||
import org.codelibs.fess.app.web.base.login.SpnegoCredential;
|
||||
import org.codelibs.fess.exception.FessSystemException;
|
||||
|
@ -126,7 +127,19 @@ public class SpnegoAuthenticator implements SsoAuthenticator {
|
|||
@Override
|
||||
public String getInitParameter(final String name) {
|
||||
if (SpnegoHttpFilter.Constants.LOGGER_LEVEL.equals(name)) {
|
||||
return fessConfig.getSpnegoLoggerLevel();
|
||||
if (StringUtil.isNotBlank(fessConfig.getSpnegoLoggerLevel())) {
|
||||
return fessConfig.getSpnegoLoggerLevel();
|
||||
} else if (logger.isDebugEnabled()) {
|
||||
return "3";
|
||||
} else if (logger.isInfoEnabled()) {
|
||||
return "5";
|
||||
} else if (logger.isWarnEnabled()) {
|
||||
return "6";
|
||||
} else if (logger.isErrorEnabled()) {
|
||||
return "7";
|
||||
} else {
|
||||
return "0";
|
||||
}
|
||||
} else if (SpnegoHttpFilter.Constants.LOGIN_CONF.equals(name)) {
|
||||
return getResourcePath(fessConfig.getSpnegoLoginConf());
|
||||
} else if (SpnegoHttpFilter.Constants.KRB5_CONF.equals(name)) {
|
||||
|
@ -149,6 +162,8 @@ public class SpnegoAuthenticator implements SsoAuthenticator {
|
|||
return fessConfig.getSpnegoAllowLocalhost();
|
||||
} else if (SpnegoHttpFilter.Constants.ALLOW_DELEGATION.equals(name)) {
|
||||
return fessConfig.getSpnegoAllowDelegation();
|
||||
} else if (SpnegoHttpFilter.Constants.EXCLUDE_DIRS.equals(name)) {
|
||||
return fessConfig.getSpnegoExcludeDirs();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -673,7 +673,7 @@ ldap.attr.homeDirectory=homeDirectory
|
|||
# SSO
|
||||
# ------
|
||||
sso.type=none
|
||||
spnego.logger.level=0
|
||||
spnego.logger.level=
|
||||
spnego.krb5.conf=krb5.conf
|
||||
spnego.login.conf=auth_login.conf
|
||||
spnego.preauth.username=username
|
||||
|
@ -685,6 +685,7 @@ spnego.allow.unsecure.basic=true
|
|||
spnego.prompt.ntlm=true
|
||||
spnego.allow.localhost=true
|
||||
spnego.allow.delegation=false
|
||||
spnego.exclude.dirs=
|
||||
|
||||
oic.client.id=__CLIENT_ID__
|
||||
oic.client.secret=__CLIENT_SECRET__
|
||||
|
|
Loading…
Add table
Reference in a new issue