Skip to content

Instantly share code, notes, and snippets.

@GaetanoPiazzolla
Created September 29, 2021 15:57
Show Gist options
  • Save GaetanoPiazzolla/72d6e972bbf8af3c49e4c290d6a2453b to your computer and use it in GitHub Desktop.
Save GaetanoPiazzolla/72d6e972bbf8af3c49e4c290d6a2453b to your computer and use it in GitHub Desktop.
import org.jboss.logging.Logger;
import org.jboss.msc.service.ServiceContainer;
import org.jboss.msc.service.ServiceController;
import org.jboss.msc.service.ServiceName;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.wildfly.security.credential.PasswordCredential;
import org.wildfly.security.credential.store.CredentialStore;
import org.wildfly.security.credential.store.CredentialStoreException;
import org.wildfly.security.password.Password;
import org.wildfly.security.password.interfaces.ClearPassword;
import javax.annotation.PostConstruct;
import java.util.Arrays;
import org.jboss.as.server.CurrentServiceContainer;
@Service
public class CredentialService {
private static String passwordSMTP = null;
private static final ServiceName SERVICE_NAME_CRED_STORE = ServiceName.of("org", "wildfly", "security", "credential-store");
@PostConstruct
private void init() throws Exception {
String credentialStoreName = "STORE_NAME";
String alias = "SMTP_PASSWORD";
ServiceContainer registry = CurrentServiceContainer.getServiceContainer();
ServiceController<?> credStoreService = registry.getService(ServiceName.of(SERVICE_NAME_CRED_STORE, credentialStoreName));
CredentialStore cs = (CredentialStore) credStoreService.getValue();
if (cs.exists(alias, PasswordCredential.class)) {
Password password = cs.retrieve(alias, PasswordCredential.class).getPassword();
if (password instanceof ClearPassword) {
passwordSMTP = new String(((ClearPassword) password).getPassword());
}
}
}
public String getPasswordSMTP() {
return passwordSMTP;
}
}
@GaetanoPiazzolla
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment