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 איז דער עקסיסטירנדיקער KeyStore.PrivateKeyEntry. גיט איבער די פּראָקסי־חשבון ווערטן פֿון דער אַפּלאַקיישאָנס באַגלייבעניש־קוואַל, דערנאָך ניצט דעם פֿאַרצייכנער אין זײַן געוויינטלעכן ZipFile און אַרויסגאַנג־שטראָם אַרבעטספֿלוס.

דער פּרעדיקאַט פֿון בקשהשטעלער־טיפּ האַלט פּראָקסי־ און ציל־אויטענטיפֿיקאַציע באַזונדער און פֿאַרמיידט אַז אַ ציל־אויסרופֿונג זאָל באַקומען דאָס פּראָקסי־פּאַראָל; האָסט און פּאָרט באַגרענעצן דעם מיטלמאַן.

סיסטעם־אייגנשאַפֿטן און דער פֿאַרבאַשטימטער Authenticator ווירקן אויף דער גאַנצער JVM. שטעלט זייער לעבנסדויער בײַם אָנהייב אַנשטאָט זיי איבערצושטעלן אַרום פּאַראַלעלע אַרבעטן.

דער פּובליקער jdk.security.jarsigner API פֿאַרמיידט sun.security.tools.jarsigner.Main און אַלטע tools.jar אויסשטעלונגען. דאָס ביישפּיל ניצט HTTP TSA; HTTPS TSA דאַרף אויך זײַן אייגענעם HTTPS וועג און די געוויינטלעכע פֿעריפֿיקאַציע־ און אויטענטיפֿיקאַציע־פּאָליטיק.

פֿאַרבונדענע אַרטיקלען