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 yw'r KeyStore.PrivateKeyEntry presennol. Rhowch werthoedd cyfrif y procsi o ffynhonnell gymwyseddau'r cymhwysiad, yna defnyddiwch y llofnodwr hwn yn ei lif waith arferol ZipFile a ffrwd allbwn.

Mae'r preddigad math ceisydd yn cadw dilysu'r procsi a'r cyrchfan ar wahân, gan rwystro her cyrchfan rhag cael cyfrinair y procsi; mae gwesteiwr a phorth yn cyfyngu'r cyfryngwr.

Mae priodweddau system a'r Authenticator diofyn yn effeithio ar y JVM gyfan. Gosodwch eu hoes wrth gychwyn yn lle eu newid o amgylch tasgau cydredol.

Mae API cyhoeddus jdk.security.jarsigner yn osgoi sun.security.tools.jarsigner.Main a chynlluniau hen tools.jar. Mae'r enghraifft yn defnyddio TSA HTTP; mae TSA HTTPS hefyd angen ei lwybr HTTPS a'r polisi gwirio a dilysu arferol.

Erthyglau cysylltiedig