System.setProperty("http.proxyHost", "proxy.example");
System.setProperty("http.proxyPort", "8080");

java.net.Authenticator.setDefault(new java.net.Authenticator() {
    @Override
    protected java.net.PasswordAuthentication getPasswordAuthentication() {
        if (getRequestorType() == RequestorType.PROXY
                && "proxy.example".equalsIgnoreCase(getRequestingHost())
                && getRequestingPort() == 8080) {
            return new java.net.PasswordAuthentication(
                proxyUser, proxyPassword.toCharArray());
        }
        return null;
    }
});

var signer = new jdk.security.jarsigner.JarSigner.Builder(signingEntry)
    .tsa(java.net.URI.create("http://tsa.example/"))
    .build();

signingEntry është KeyStore.PrivateKeyEntry ekzistues. Jepni vlerat e llogarisë së përfaqësuesit nga burimi i kredencialeve të aplikacionit, pastaj përdorni këtë nënshkrues në rrjedhën e tij normale ZipFile dhe rrjedhën e daljes.

Kallëzuesi i llojit të kërkuesit mban vërtetimin e përfaqësuesit dhe të destinacionit të ndara, duke penguar që një sfidë e destinacionit të marrë fjalëkalimin e përfaqësuesit; hosti dhe porta kufizojnë ndërmjetësin.

Vetitë e sistemit dhe Authenticator-i i parazgjedhur ndikojnë në të gjithë JVM-në. Përcaktoni jetëgjatësinë e tyre në nisje në vend që t''i ndërroni rreth punëve të njëkohshme.

API publik jdk.security.jarsigner shmang sun.security.tools.jarsigner.Main dhe paraqitjet e vjetra tools.jar. Shembulli përdor HTTP TSA; HTTPS TSA gjithashtu kërkon rrugën e vet HTTPS dhe politikën e zakonshme të verifikimit dhe vërtetimit.

Artikuj të ngjashëm