blob: 25de17d5247d171e4f3c195c7e8a5e123314cd29 [file] [log] [blame]
J. Duke319a3b92007-12-01 00:00:00 +00001#
2# This is the "master security properties file".
3#
4# In this file, various security properties are set for use by
5# java.security classes. This is where users can statically register
6# Cryptography Package Providers ("providers" for short). The term
7# "provider" refers to a package or set of packages that supply a
8# concrete implementation of a subset of the cryptography aspects of
9# the Java Security API. A provider may, for example, implement one or
10# more digital signature algorithms or message digest algorithms.
11#
12# Each provider must implement a subclass of the Provider class.
13# To register a provider in this master security properties file,
14# specify the Provider subclass name and priority in the format
15#
16# security.provider.<n>=<className>
17#
18# This declares a provider, and specifies its preference
19# order n. The preference order is the order in which providers are
20# searched for requested algorithms (when no specific provider is
21# requested). The order is 1-based; 1 is the most preferred, followed
22# by 2, and so on.
23#
24# <className> must specify the subclass of the Provider class whose
25# constructor sets the values of various properties that are required
26# for the Java Security API to look up the algorithms or other
27# facilities implemented by the provider.
28#
29# There must be at least one provider specification in java.security.
30# There is a default provider that comes standard with the JDK. It
31# is called the "SUN" provider, and its Provider subclass
32# named Sun appears in the sun.security.provider package. Thus, the
33# "SUN" provider is registered via the following:
34#
35# security.provider.1=sun.security.provider.Sun
36#
37# (The number 1 is used for the default provider.)
38#
39# Note: Providers can be dynamically registered instead by calls to
40# either the addProvider or insertProviderAt method in the Security
41# class.
42
43#
44# List of providers and their preference orders (see above):
45#
46security.provider.1=sun.security.provider.Sun
47security.provider.2=sun.security.rsa.SunRsaSign
48security.provider.3=com.sun.net.ssl.internal.ssl.Provider
49security.provider.4=com.sun.crypto.provider.SunJCE
50security.provider.5=sun.security.jgss.SunProvider
51security.provider.6=com.sun.security.sasl.Provider
52security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI
53security.provider.8=sun.security.smartcardio.SunPCSC
54security.provider.9=sun.security.mscapi.SunMSCAPI
55
56#
57# Select the source of seed data for SecureRandom. By default an
58# attempt is made to use the entropy gathering device specified by
59# the securerandom.source property. If an exception occurs when
60# accessing the URL then the traditional system/thread activity
61# algorithm is used.
62#
63# On Solaris and Linux systems, if file:/dev/urandom is specified and it
64# exists, a special SecureRandom implementation is activated by default.
65# This "NativePRNG" reads random bytes directly from /dev/urandom.
66#
67# On Windows systems, the URLs file:/dev/random and file:/dev/urandom
68# enables use of the Microsoft CryptoAPI seed functionality.
69#
70securerandom.source=file:/dev/urandom
71#
72# The entropy gathering device is described as a URL and can also
73# be specified with the system property "java.security.egd". For example,
74# -Djava.security.egd=file:/dev/urandom
75# Specifying this system property will override the securerandom.source
76# setting.
77
78#
79# Class to instantiate as the javax.security.auth.login.Configuration
80# provider.
81#
82login.configuration.provider=com.sun.security.auth.login.ConfigFile
83
84#
85# Default login configuration file
86#
87#login.config.url.1=file:${user.home}/.java.login.config
88
89#
90# Class to instantiate as the system Policy. This is the name of the class
91# that will be used as the Policy object.
92#
93policy.provider=sun.security.provider.PolicyFile
94
95# The default is to have a single system-wide policy file,
96# and a policy file in the user's home directory.
97policy.url.1=file:${java.home}/lib/security/java.policy
98policy.url.2=file:${user.home}/.java.policy
99
100# whether or not we expand properties in the policy file
101# if this is set to false, properties (${...}) will not be expanded in policy
102# files.
103policy.expandProperties=true
104
105# whether or not we allow an extra policy to be passed on the command line
106# with -Djava.security.policy=somefile. Comment out this line to disable
107# this feature.
108policy.allowSystemProperty=true
109
110# whether or not we look into the IdentityScope for trusted Identities
111# when encountering a 1.1 signed JAR file. If the identity is found
112# and is trusted, we grant it AllPermission.
113policy.ignoreIdentityScope=false
114
115#
116# Default keystore type.
117#
118keystore.type=jks
119
120#
121# Class to instantiate as the system scope:
122#
123system.scope=sun.security.provider.IdentityDatabase
124
125#
126# List of comma-separated packages that start with or equal this string
127# will cause a security exception to be thrown when
128# passed to checkPackageAccess unless the
129# corresponding RuntimePermission ("accessClassInPackage."+package) has
130# been granted.
131package.access=sun.
132
133#
134# List of comma-separated packages that start with or equal this string
135# will cause a security exception to be thrown when
136# passed to checkPackageDefinition unless the
137# corresponding RuntimePermission ("defineClassInPackage."+package) has
138# been granted.
139#
140# by default, no packages are restricted for definition, and none of
141# the class loaders supplied with the JDK call checkPackageDefinition.
142#
143#package.definition=
144
145#
146# Determines whether this properties file can be appended to
147# or overridden on the command line via -Djava.security.properties
148#
149security.overridePropertiesFile=true
150
151#
152# Determines the default key and trust manager factory algorithms for
153# the javax.net.ssl package.
154#
155ssl.KeyManagerFactory.algorithm=SunX509
156ssl.TrustManagerFactory.algorithm=PKIX
157
158#
159# The Java-level namelookup cache policy for successful lookups:
160#
161# any negative value: caching forever
162# any positive value: the number of seconds to cache an address for
163# zero: do not cache
164#
165# default value is forever (FOREVER). For security reasons, this
166# caching is made forever when a security manager is set. When a security
167# manager is not set, the default behavior is to cache for 30 seconds.
168#
169# NOTE: setting this to anything other than the default value can have
170# serious security implications. Do not set it unless
171# you are sure you are not exposed to DNS spoofing attack.
172#
173#networkaddress.cache.ttl=-1
174
175# The Java-level namelookup cache policy for failed lookups:
176#
177# any negative value: cache forever
178# any positive value: the number of seconds to cache negative lookup results
179# zero: do not cache
180#
181# In some Microsoft Windows networking environments that employ
182# the WINS name service in addition to DNS, name service lookups
183# that fail may take a noticeably long time to return (approx. 5 seconds).
184# For this reason the default caching policy is to maintain these
185# results for 10 seconds.
186#
187#
188networkaddress.cache.negative.ttl=10
189
190#
191# Properties to configure OCSP for certificate revocation checking
192#
193
194# Enable OCSP
195#
196# By default, OCSP is not used for certificate revocation checking.
197# This property enables the use of OCSP when set to the value "true".
198#
199# NOTE: SocketPermission is required to connect to an OCSP responder.
200#
201# Example,
202# ocsp.enable=true
203
204#
205# Location of the OCSP responder
206#
207# By default, the location of the OCSP responder is determined implicitly
208# from the certificate being validated. This property explicitly specifies
209# the location of the OCSP responder. The property is used when the
210# Authority Information Access extension (defined in RFC 3280) is absent
211# from the certificate or when it requires overriding.
212#
213# Example,
214# ocsp.responderURL=http://ocsp.example.net:80
215
216#
217# Subject name of the OCSP responder's certificate
218#
219# By default, the certificate of the OCSP responder is that of the issuer
220# of the certificate being validated. This property identifies the certificate
221# of the OCSP responder when the default does not apply. Its value is a string
222# distinguished name (defined in RFC 2253) which identifies a certificate in
223# the set of certificates supplied during cert path validation. In cases where
224# the subject name alone is not sufficient to uniquely identify the certificate
225# then both the "ocsp.responderCertIssuerName" and
226# "ocsp.responderCertSerialNumber" properties must be used instead. When this
227# property is set then those two properties are ignored.
228#
229# Example,
230# ocsp.responderCertSubjectName="CN=OCSP Responder, O=XYZ Corp"
231
232#
233# Issuer name of the OCSP responder's certificate
234#
235# By default, the certificate of the OCSP responder is that of the issuer
236# of the certificate being validated. This property identifies the certificate
237# of the OCSP responder when the default does not apply. Its value is a string
238# distinguished name (defined in RFC 2253) which identifies a certificate in
239# the set of certificates supplied during cert path validation. When this
240# property is set then the "ocsp.responderCertSerialNumber" property must also
241# be set. When the "ocsp.responderCertSubjectName" property is set then this
242# property is ignored.
243#
244# Example,
245# ocsp.responderCertIssuerName="CN=Enterprise CA, O=XYZ Corp"
246
247#
248# Serial number of the OCSP responder's certificate
249#
250# By default, the certificate of the OCSP responder is that of the issuer
251# of the certificate being validated. This property identifies the certificate
252# of the OCSP responder when the default does not apply. Its value is a string
253# of hexadecimal digits (colon or space separators may be present) which
254# identifies a certificate in the set of certificates supplied during cert path
255# validation. When this property is set then the "ocsp.responderCertIssuerName"
256# property must also be set. When the "ocsp.responderCertSubjectName" property
257# is set then this property is ignored.
258#
259# Example,
260# ocsp.responderCertSerialNumber=2A:FF:00
261