*/
package org.akraino.validation.ui.conf;
+import java.io.IOException;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.X509Certificate;
+import java.util.List;
import java.util.Map;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
+import org.onap.portalsdk.core.domain.User;
+import org.onap.portalsdk.core.onboarding.exception.CipherUtilException;
+import org.onap.portalsdk.core.onboarding.util.CipherUtil;
+import org.onap.portalsdk.core.service.UserProfileService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Component;
@Component
public class UiInitializer {
+ @Autowired
+ UserProfileService userService;
+
// Create all-trusting host name verifier
private final HostnameVerifier hostnameVerifier = new HostnameVerifier() {
@Override
@EventListener(ContextRefreshedEvent.class)
public void setHttpProperties() throws NoSuchAlgorithmException, KeyManagementException {
- SSLContext sslContext = SSLContext.getInstance("SSL");
- sslContext.init(null, this.trustAll, new java.security.SecureRandom());
- HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
- // Install the all-trusting host verifier
- HttpsURLConnection.setDefaultHostnameVerifier(this.hostnameVerifier);
- DefaultClientConfig config = new DefaultClientConfig();
- Map<String, Object> properties = config.getProperties();
- HTTPSProperties httpsProperties = new HTTPSProperties((str, sslSession) -> true, sslContext);
- properties.put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, httpsProperties);
+ if (System.getenv("TRUST_ALL") != null && System.getenv("TRUST_ALL").equals("true")) {
+ SSLContext sslContext = SSLContext.getInstance("SSL");
+ sslContext.init(null, this.trustAll, new java.security.SecureRandom());
+ HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
+ // Install the all-trusting host verifier
+ HttpsURLConnection.setDefaultHostnameVerifier(this.hostnameVerifier);
+ DefaultClientConfig config = new DefaultClientConfig();
+ Map<String, Object> properties = config.getProperties();
+ HTTPSProperties httpsProperties = new HTTPSProperties((str, sslSession) -> true, sslContext);
+ properties.put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, httpsProperties);
+ }
+ }
+
+ @EventListener(ContextRefreshedEvent.class)
+ public void updateAdminUser() throws RuntimeException, IOException, CipherUtilException {
+ User admin = null;
+ List<User> users = userService.findAllActive();
+ for (User user : users) {
+ if (user.getLoginId().equals("admin")) {
+ admin = user;
+ }
+ }
+ if (admin == null) {
+ throw new RuntimeException("Admin user does not exist");
+ }
+ if (admin.getLoginPwd().equals("admin_password")) {
+ admin.setLoginPwd(
+ CipherUtil.encryptPKC(System.getenv("UI_ADMIN_PASSWORD"), System.getenv("ENCRYPTION_KEY")));
+ userService.saveUser(admin);
+ }
}
}