1 # |
|
2 # This is the "master security properties file". |
|
3 # |
|
4 # An alternate java.security properties file may be specified |
|
5 # from the command line via the system property |
|
6 # |
|
7 # -Djava.security.properties=<URL> |
|
8 # |
|
9 # This properties file appends to the master security properties file. |
|
10 # If both properties files specify values for the same key, the value |
|
11 # from the command-line properties file is selected, as it is the last |
|
12 # one loaded. |
|
13 # |
|
14 # Also, if you specify |
|
15 # |
|
16 # -Djava.security.properties==<URL> (2 equals), |
|
17 # |
|
18 # then that properties file completely overrides the master security |
|
19 # properties file. |
|
20 # |
|
21 # To disable the ability to specify an additional properties file from |
|
22 # the command line, set the key security.overridePropertiesFile |
|
23 # to false in the master security properties file. It is set to true |
|
24 # by default. |
|
25 |
|
26 # In this file, various security properties are set for use by |
|
27 # java.security classes. This is where users can statically register |
|
28 # Cryptography Package Providers ("providers" for short). The term |
|
29 # "provider" refers to a package or set of packages that supply a |
|
30 # concrete implementation of a subset of the cryptography aspects of |
|
31 # the Java Security API. A provider may, for example, implement one or |
|
32 # more digital signature algorithms or message digest algorithms. |
|
33 # |
|
34 # Each provider must implement a subclass of the Provider class. |
|
35 # To register a provider in this master security properties file, |
|
36 # specify the Provider subclass name and priority in the format |
|
37 # |
|
38 # security.provider.<n>=<className> |
|
39 # |
|
40 # This declares a provider, and specifies its preference |
|
41 # order n. The preference order is the order in which providers are |
|
42 # searched for requested algorithms (when no specific provider is |
|
43 # requested). The order is 1-based; 1 is the most preferred, followed |
|
44 # by 2, and so on. |
|
45 # |
|
46 # <className> must specify the subclass of the Provider class whose |
|
47 # constructor sets the values of various properties that are required |
|
48 # for the Java Security API to look up the algorithms or other |
|
49 # facilities implemented by the provider. |
|
50 # |
|
51 # There must be at least one provider specification in java.security. |
|
52 # There is a default provider that comes standard with the JDK. It |
|
53 # is called the "SUN" provider, and its Provider subclass |
|
54 # named Sun appears in the sun.security.provider package. Thus, the |
|
55 # "SUN" provider is registered via the following: |
|
56 # |
|
57 # security.provider.1=sun.security.provider.Sun |
|
58 # |
|
59 # (The number 1 is used for the default provider.) |
|
60 # |
|
61 # Note: Providers can be dynamically registered instead by calls to |
|
62 # either the addProvider or insertProviderAt method in the Security |
|
63 # class. |
|
64 |
|
65 # |
|
66 # List of providers and their preference orders (see above): |
|
67 # |
|
68 security.provider.1=sun.security.provider.Sun |
|
69 security.provider.2=sun.security.rsa.SunRsaSign |
|
70 security.provider.3=sun.security.ec.SunEC |
|
71 security.provider.4=com.sun.net.ssl.internal.ssl.Provider |
|
72 security.provider.5=com.sun.crypto.provider.SunJCE |
|
73 security.provider.6=sun.security.jgss.SunProvider |
|
74 security.provider.7=com.sun.security.sasl.Provider |
|
75 security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI |
|
76 security.provider.9=sun.security.smartcardio.SunPCSC |
|
77 |
|
78 # |
|
79 # Select the source of seed data for SecureRandom. By default an |
|
80 # attempt is made to use the entropy gathering device specified by |
|
81 # the securerandom.source property. If an exception occurs when |
|
82 # accessing the URL then the traditional system/thread activity |
|
83 # algorithm is used. |
|
84 # |
|
85 # On Solaris and Linux systems, if file:/dev/urandom is specified and it |
|
86 # exists, a special SecureRandom implementation is activated by default. |
|
87 # This "NativePRNG" reads random bytes directly from /dev/urandom. |
|
88 # |
|
89 # On Windows systems, the URLs file:/dev/random and file:/dev/urandom |
|
90 # enables use of the Microsoft CryptoAPI seed functionality. |
|
91 # |
|
92 securerandom.source=file:/dev/urandom |
|
93 # |
|
94 # The entropy gathering device is described as a URL and can also |
|
95 # be specified with the system property "java.security.egd". For example, |
|
96 # -Djava.security.egd=file:/dev/urandom |
|
97 # Specifying this system property will override the securerandom.source |
|
98 # setting. |
|
99 |
|
100 # |
|
101 # Class to instantiate as the javax.security.auth.login.Configuration |
|
102 # provider. |
|
103 # |
|
104 login.configuration.provider=com.sun.security.auth.login.ConfigFile |
|
105 |
|
106 # |
|
107 # Default login configuration file |
|
108 # |
|
109 #login.config.url.1=file:${user.home}/.java.login.config |
|
110 |
|
111 # |
|
112 # Class to instantiate as the system Policy. This is the name of the class |
|
113 # that will be used as the Policy object. |
|
114 # |
|
115 policy.provider=sun.security.provider.PolicyFile |
|
116 |
|
117 # The default is to have a single system-wide policy file, |
|
118 # and a policy file in the user's home directory. |
|
119 policy.url.1=file:${java.home}/lib/security/java.policy |
|
120 policy.url.2=file:${user.home}/.java.policy |
|
121 |
|
122 # whether or not we expand properties in the policy file |
|
123 # if this is set to false, properties (${...}) will not be expanded in policy |
|
124 # files. |
|
125 policy.expandProperties=true |
|
126 |
|
127 # whether or not we allow an extra policy to be passed on the command line |
|
128 # with -Djava.security.policy=somefile. Comment out this line to disable |
|
129 # this feature. |
|
130 policy.allowSystemProperty=true |
|
131 |
|
132 # whether or not we look into the IdentityScope for trusted Identities |
|
133 # when encountering a 1.1 signed JAR file. If the identity is found |
|
134 # and is trusted, we grant it AllPermission. |
|
135 policy.ignoreIdentityScope=false |
|
136 |
|
137 # |
|
138 # Default keystore type. |
|
139 # |
|
140 keystore.type=jks |
|
141 |
|
142 # |
|
143 # List of comma-separated packages that start with or equal this string |
|
144 # will cause a security exception to be thrown when |
|
145 # passed to checkPackageAccess unless the |
|
146 # corresponding RuntimePermission ("accessClassInPackage."+package) has |
|
147 # been granted. |
|
148 package.access=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.,com.sun.org.glassfish.external.,com.sun.org.glassfish.gmbal.,jdk.internal. |
|
149 |
|
150 # |
|
151 # List of comma-separated packages that start with or equal this string |
|
152 # will cause a security exception to be thrown when |
|
153 # passed to checkPackageDefinition unless the |
|
154 # corresponding RuntimePermission ("defineClassInPackage."+package) has |
|
155 # been granted. |
|
156 # |
|
157 # by default, none of the class loaders supplied with the JDK call |
|
158 # checkPackageDefinition. |
|
159 # |
|
160 package.definition=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,com.sun.org.apache.xerces.internal.utils.,com.sun.org.apache.xalan.internal.utils.,com.sun.org.glassfish.external.,com.sun.org.glassfish.gmbal.,jdk.internal. |
|
161 |
|
162 # |
|
163 # Determines whether this properties file can be appended to |
|
164 # or overridden on the command line via -Djava.security.properties |
|
165 # |
|
166 security.overridePropertiesFile=true |
|
167 |
|
168 # |
|
169 # Determines the default key and trust manager factory algorithms for |
|
170 # the javax.net.ssl package. |
|
171 # |
|
172 ssl.KeyManagerFactory.algorithm=SunX509 |
|
173 ssl.TrustManagerFactory.algorithm=PKIX |
|
174 |
|
175 # |
|
176 # The Java-level namelookup cache policy for successful lookups: |
|
177 # |
|
178 # any negative value: caching forever |
|
179 # any positive value: the number of seconds to cache an address for |
|
180 # zero: do not cache |
|
181 # |
|
182 # default value is forever (FOREVER). For security reasons, this |
|
183 # caching is made forever when a security manager is set. When a security |
|
184 # manager is not set, the default behavior in this implementation |
|
185 # is to cache for 30 seconds. |
|
186 # |
|
187 # NOTE: setting this to anything other than the default value can have |
|
188 # serious security implications. Do not set it unless |
|
189 # you are sure you are not exposed to DNS spoofing attack. |
|
190 # |
|
191 #networkaddress.cache.ttl=-1 |
|
192 |
|
193 # The Java-level namelookup cache policy for failed lookups: |
|
194 # |
|
195 # any negative value: cache forever |
|
196 # any positive value: the number of seconds to cache negative lookup results |
|
197 # zero: do not cache |
|
198 # |
|
199 # In some Microsoft Windows networking environments that employ |
|
200 # the WINS name service in addition to DNS, name service lookups |
|
201 # that fail may take a noticeably long time to return (approx. 5 seconds). |
|
202 # For this reason the default caching policy is to maintain these |
|
203 # results for 10 seconds. |
|
204 # |
|
205 # |
|
206 networkaddress.cache.negative.ttl=10 |
|
207 |
|
208 # |
|
209 # Properties to configure OCSP for certificate revocation checking |
|
210 # |
|
211 |
|
212 # Enable OCSP |
|
213 # |
|
214 # By default, OCSP is not used for certificate revocation checking. |
|
215 # This property enables the use of OCSP when set to the value "true". |
|
216 # |
|
217 # NOTE: SocketPermission is required to connect to an OCSP responder. |
|
218 # |
|
219 # Example, |
|
220 # ocsp.enable=true |
|
221 |
|
222 # |
|
223 # Location of the OCSP responder |
|
224 # |
|
225 # By default, the location of the OCSP responder is determined implicitly |
|
226 # from the certificate being validated. This property explicitly specifies |
|
227 # the location of the OCSP responder. The property is used when the |
|
228 # Authority Information Access extension (defined in RFC 3280) is absent |
|
229 # from the certificate or when it requires overriding. |
|
230 # |
|
231 # Example, |
|
232 # ocsp.responderURL=http://ocsp.example.net:80 |
|
233 |
|
234 # |
|
235 # Subject name of the OCSP responder's certificate |
|
236 # |
|
237 # By default, the certificate of the OCSP responder is that of the issuer |
|
238 # of the certificate being validated. This property identifies the certificate |
|
239 # of the OCSP responder when the default does not apply. Its value is a string |
|
240 # distinguished name (defined in RFC 2253) which identifies a certificate in |
|
241 # the set of certificates supplied during cert path validation. In cases where |
|
242 # the subject name alone is not sufficient to uniquely identify the certificate |
|
243 # then both the "ocsp.responderCertIssuerName" and |
|
244 # "ocsp.responderCertSerialNumber" properties must be used instead. When this |
|
245 # property is set then those two properties are ignored. |
|
246 # |
|
247 # Example, |
|
248 # ocsp.responderCertSubjectName="CN=OCSP Responder, O=XYZ Corp" |
|
249 |
|
250 # |
|
251 # Issuer name of the OCSP responder's certificate |
|
252 # |
|
253 # By default, the certificate of the OCSP responder is that of the issuer |
|
254 # of the certificate being validated. This property identifies the certificate |
|
255 # of the OCSP responder when the default does not apply. Its value is a string |
|
256 # distinguished name (defined in RFC 2253) which identifies a certificate in |
|
257 # the set of certificates supplied during cert path validation. When this |
|
258 # property is set then the "ocsp.responderCertSerialNumber" property must also |
|
259 # be set. When the "ocsp.responderCertSubjectName" property is set then this |
|
260 # property is ignored. |
|
261 # |
|
262 # Example, |
|
263 # ocsp.responderCertIssuerName="CN=Enterprise CA, O=XYZ Corp" |
|
264 |
|
265 # |
|
266 # Serial number of the OCSP responder's certificate |
|
267 # |
|
268 # By default, the certificate of the OCSP responder is that of the issuer |
|
269 # of the certificate being validated. This property identifies the certificate |
|
270 # of the OCSP responder when the default does not apply. Its value is a string |
|
271 # of hexadecimal digits (colon or space separators may be present) which |
|
272 # identifies a certificate in the set of certificates supplied during cert path |
|
273 # validation. When this property is set then the "ocsp.responderCertIssuerName" |
|
274 # property must also be set. When the "ocsp.responderCertSubjectName" property |
|
275 # is set then this property is ignored. |
|
276 # |
|
277 # Example, |
|
278 # ocsp.responderCertSerialNumber=2A:FF:00 |
|
279 |
|
280 # |
|
281 # Policy for failed Kerberos KDC lookups: |
|
282 # |
|
283 # When a KDC is unavailable (network error, service failure, etc), it is |
|
284 # put inside a blacklist and accessed less often for future requests. The |
|
285 # value (case-insensitive) for this policy can be: |
|
286 # |
|
287 # tryLast |
|
288 # KDCs in the blacklist are always tried after those not on the list. |
|
289 # |
|
290 # tryLess[:max_retries,timeout] |
|
291 # KDCs in the blacklist are still tried by their order in the configuration, |
|
292 # but with smaller max_retries and timeout values. max_retries and timeout |
|
293 # are optional numerical parameters (default 1 and 5000, which means once |
|
294 # and 5 seconds). Please notes that if any of the values defined here is |
|
295 # more than what is defined in krb5.conf, it will be ignored. |
|
296 # |
|
297 # Whenever a KDC is detected as available, it is removed from the blacklist. |
|
298 # The blacklist is reset when krb5.conf is reloaded. You can add |
|
299 # refreshKrb5Config=true to a JAAS configuration file so that krb5.conf is |
|
300 # reloaded whenever a JAAS authentication is attempted. |
|
301 # |
|
302 # Example, |
|
303 # krb5.kdc.bad.policy = tryLast |
|
304 # krb5.kdc.bad.policy = tryLess:2,2000 |
|
305 krb5.kdc.bad.policy = tryLast |
|
306 |
|
307 # Algorithm restrictions for certification path (CertPath) processing |
|
308 # |
|
309 # In some environments, certain algorithms or key lengths may be undesirable |
|
310 # for certification path building and validation. For example, "MD2" is |
|
311 # generally no longer considered to be a secure hash algorithm. This section |
|
312 # describes the mechanism for disabling algorithms based on algorithm name |
|
313 # and/or key length. This includes algorithms used in certificates, as well |
|
314 # as revocation information such as CRLs and signed OCSP Responses. |
|
315 # |
|
316 # The syntax of the disabled algorithm string is described as this Java |
|
317 # BNF-style: |
|
318 # DisabledAlgorithms: |
|
319 # " DisabledAlgorithm { , DisabledAlgorithm } " |
|
320 # |
|
321 # DisabledAlgorithm: |
|
322 # AlgorithmName [Constraint] |
|
323 # |
|
324 # AlgorithmName: |
|
325 # (see below) |
|
326 # |
|
327 # Constraint: |
|
328 # KeySizeConstraint |
|
329 # |
|
330 # KeySizeConstraint: |
|
331 # keySize Operator DecimalInteger |
|
332 # |
|
333 # Operator: |
|
334 # <= | < | == | != | >= | > |
|
335 # |
|
336 # DecimalInteger: |
|
337 # DecimalDigits |
|
338 # |
|
339 # DecimalDigits: |
|
340 # DecimalDigit {DecimalDigit} |
|
341 # |
|
342 # DecimalDigit: one of |
|
343 # 1 2 3 4 5 6 7 8 9 0 |
|
344 # |
|
345 # The "AlgorithmName" is the standard algorithm name of the disabled |
|
346 # algorithm. See "Java Cryptography Architecture Standard Algorithm Name |
|
347 # Documentation" for information about Standard Algorithm Names. Matching |
|
348 # is performed using a case-insensitive sub-element matching rule. (For |
|
349 # example, in "SHA1withECDSA" the sub-elements are "SHA1" for hashing and |
|
350 # "ECDSA" for signatures.) If the assertion "AlgorithmName" is a |
|
351 # sub-element of the certificate algorithm name, the algorithm will be |
|
352 # rejected during certification path building and validation. For example, |
|
353 # the assertion algorithm name "DSA" will disable all certificate algorithms |
|
354 # that rely on DSA, such as NONEwithDSA, SHA1withDSA. However, the assertion |
|
355 # will not disable algorithms related to "ECDSA". |
|
356 # |
|
357 # A "Constraint" provides further guidance for the algorithm being specified. |
|
358 # The "KeySizeConstraint" requires a key of a valid size range if the |
|
359 # "AlgorithmName" is of a key algorithm. The "DecimalInteger" indicates the |
|
360 # key size specified in number of bits. For example, "RSA keySize <= 1024" |
|
361 # indicates that any RSA key with key size less than or equal to 1024 bits |
|
362 # should be disabled, and "RSA keySize < 1024, RSA keySize > 2048" indicates |
|
363 # that any RSA key with key size less than 1024 or greater than 2048 should |
|
364 # be disabled. Note that the "KeySizeConstraint" only makes sense to key |
|
365 # algorithms. |
|
366 # |
|
367 # Note: This property is currently used by Oracle's PKIX implementation. It |
|
368 # is not guaranteed to be examined and used by other implementations. |
|
369 # |
|
370 # Example: |
|
371 # jdk.certpath.disabledAlgorithms=MD2, DSA, RSA keySize < 2048 |
|
372 # |
|
373 # |
|
374 jdk.certpath.disabledAlgorithms=MD2 |
|
375 |
|
376 # Algorithm restrictions for Secure Socket Layer/Transport Layer Security |
|
377 # (SSL/TLS) processing |
|
378 # |
|
379 # In some environments, certain algorithms or key lengths may be undesirable |
|
380 # when using SSL/TLS. This section describes the mechanism for disabling |
|
381 # algorithms during SSL/TLS security parameters negotiation, including cipher |
|
382 # suites selection, peer authentication and key exchange mechanisms. |
|
383 # |
|
384 # For PKI-based peer authentication and key exchange mechanisms, this list |
|
385 # of disabled algorithms will also be checked during certification path |
|
386 # building and validation, including algorithms used in certificates, as |
|
387 # well as revocation information such as CRLs and signed OCSP Responses. |
|
388 # This is in addition to the jdk.certpath.disabledAlgorithms property above. |
|
389 # |
|
390 # See the specification of "jdk.certpath.disabledAlgorithms" for the |
|
391 # syntax of the disabled algorithm string. |
|
392 # |
|
393 # Note: This property is currently used by Oracle's JSSE implementation. |
|
394 # It is not guaranteed to be examined and used by other implementations. |
|
395 # |
|
396 # Example: |
|
397 # jdk.tls.disabledAlgorithms=MD5, SHA1, DSA, RSA keySize < 2048 |
|
398 |
|