You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/reference-manual/native-image/JCASecurityServices.md
+6-3Lines changed: 6 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,17 +36,20 @@ The report will detail all registered service classes, the API methods that trig
36
36
37
37
> Note: The `--enable-all-security-services` option is now deprecated and it will be removed in a future release.
38
38
39
-
## Provider initialization
39
+
## Provider Initialization
40
40
41
-
Security providers are initialized at build time by default.
41
+
Currently security providers are initialized at build time.
42
+
To move their initialization to run time, use the option `--future-defaults=all` or `--future-defaults=run-time-initialized-jdk`.
43
+
Provider verification will still occur at build time.
44
+
Run-time initialization of security providers helps reduce image heap size.
42
45
To move their initialization to run time, you can use the flag `--future-defaults=all` or `--future-defaults=run-time-initialized-jdk`.
43
46
44
47
## Provider Registration
45
48
46
49
The `native-image` builder captures the list of providers and their preference order from the underlying JVM.
47
50
The provider order is specified in the `java.security` file under `<java-home>/conf/security/java.security`.
48
51
New security providers cannot be registered at run time by default (see the section above); all providers must be statically configured at executable build time.
49
-
If the user specifies `--future-defaults=all` or `--future-defaults=run-time-initialized-jdk`(to move initialization to run time), then a specific properties file can be used via the command line flag`-Djava.security.properties=<path>`.
52
+
If the user specifies `--future-defaults=all` or `--future-defaults=run-time-initialized-jdk` to move providers initialization to run time, then a specific properties file can be used via the command line option`-Djava.security.properties=<path>`.
Copy file name to clipboardExpand all lines: substratevm/CHANGELOG.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,6 +29,8 @@ This changelog summarizes major changes to GraalVM Native Image.
29
29
* (GR-64619) Missing registration errors are now subclasses of `LinkageError`
30
30
* (GR-63591) Resource bundle registration is now included as part of the `"resources"` section of _reachability-metadata.json_. When this is the case, the bundle name is specified using the `"bundle"` field.
31
31
* (GR-57827) Move the initialization of security providers from build time to runtime.
32
+
* (GR-57827) Security providers can now be initialized at run time (instead of build time) when using the option `--future-defaults=all` or `--future-defaults=run-time-initialized-jdk`.
33
+
Run-time initialization of security providers helps reduce image heap size by avoiding unnecessary objects inclusion.
32
34
33
35
## GraalVM for JDK 24 (Internal Version 24.2.0)
34
36
* (GR-59717) Added `DuringSetupAccess.registerObjectReachabilityHandler` to allow registering a callback that is executed when an object of a specified type is marked as reachable during heap scanning.
Copy file name to clipboardExpand all lines: substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_sun_security_ssl_TrustStoreManager.java
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -90,7 +90,7 @@ public void afterRegistration(AfterRegistrationAccess access) {
0 commit comments