Существует действительно способ указать настраиваемые свойства для варианта «Проверка безопасности» адаптера, и он отличается от обычного типа адаптера.Это задокументировано здесь .Я подтвердил, что этот подход работает.В документации пропущено несколько ключевых элементов, таких как имена пакетов, поэтому ниже приведен очень простой пример кода для демонстрации:
UserAuth.java
:
public class UserAuth extends UserAuthenticationSecurityCheck {
@Override
protected boolean validateCredentials(Map<String, Object> credentials) {
String test_property = ((UserAuthSecurityCheckConfig) this.config).test_property;
LOG.warning("auth test_property=" + test_property);
return true;
}
@Override
public SecurityCheckConfiguration createConfiguration(Properties properties) {
return new UserAuthSecurityCheckConfig(properties);
}
}
UserAuthSecurityCheckConfig.java
:
import java.util.Properties;
import com.ibm.mfp.security.checks.base.UserAuthenticationSecurityCheckConfig;
public class UserAuthSecurityCheckConfig extends UserAuthenticationSecurityCheckConfig {
public String test_property;
public UserAuthSecurityCheckConfig(Properties properties) {
super(properties);
this.test_property = this.getStringProperty("test_property", properties, "defaultValueInCode");
}
}
adapter.xml
:
<securityCheckDefinition name="UserLogin" class="com.xyz.UserAuth">
<property name="test_property" displayName="Test Property Auth" defaultValue="foo_default_in_xml" />
</securityCheckDefinition>