private WorkControl transactionControl;
private WcXaResource xaResource = new WcXaResource(this);
+ private String forcedPassword;
+
AbstractUserDirectory(URI uriArg, Dictionary<String, ?> props, boolean scoped) {
this.scoped = scoped;
properties = new Hashtable<String, Object>();
uri = uriStr;
}
+ forcedPassword = UserAdminConf.forcedPassword.getValue(properties);
+
userObjectClass = UserAdminConf.userObjectClass.getValue(properties);
userBase = UserAdminConf.userBase.getValue(properties);
groupObjectClass = UserAdminConf.groupObjectClass.getValue(properties);
// this.transactionManager = transactionManager;
// }
+ public String getForcedPassword() {
+ return forcedPassword;
+ }
+
public void setTransactionControl(WorkControl transactionControl) {
this.transactionControl = transactionControl;
}
// String pwd = new String((char[]) value);
// authPassword (RFC 312 https://tools.ietf.org/html/rfc3112)
char[] password = DigestUtils.bytesToChars(value);
+
+ if (userAdmin.getForcedPassword() != null && userAdmin.getForcedPassword().equals(new String(password)))
+ return true;
+
AuthPassword authPassword = AuthPassword.matchAuthValue(getAttributes(), password);
if (authPassword != null) {
if (authPassword.getAuthScheme().equals(SharedSecret.X_SHARED_SECRET)) {