Blame openjdk/jdk/src/share/lib/security/java.security-windows

Packit 1b8c31
#
Packit 1b8c31
# This is the "master security properties file".
Packit 1b8c31
#
Packit 1b8c31
# An alternate java.security properties file may be specified
Packit 1b8c31
# from the command line via the system property
Packit 1b8c31
#
Packit 1b8c31
#    -Djava.security.properties=<URL>
Packit 1b8c31
#
Packit 1b8c31
# This properties file appends to the master security properties file.
Packit 1b8c31
# If both properties files specify values for the same key, the value
Packit 1b8c31
# from the command-line properties file is selected, as it is the last
Packit 1b8c31
# one loaded.
Packit 1b8c31
#
Packit 1b8c31
# Also, if you specify
Packit 1b8c31
#
Packit 1b8c31
#    -Djava.security.properties==<URL> (2 equals),
Packit 1b8c31
#
Packit 1b8c31
# then that properties file completely overrides the master security
Packit 1b8c31
# properties file.
Packit 1b8c31
#
Packit 1b8c31
# To disable the ability to specify an additional properties file from
Packit 1b8c31
# the command line, set the key security.overridePropertiesFile
Packit 1b8c31
# to false in the master security properties file. It is set to true
Packit 1b8c31
# by default.
Packit 1b8c31
Packit 1b8c31
# In this file, various security properties are set for use by
Packit 1b8c31
# java.security classes. This is where users can statically register
Packit 1b8c31
# Cryptography Package Providers ("providers" for short). The term
Packit 1b8c31
# "provider" refers to a package or set of packages that supply a
Packit 1b8c31
# concrete implementation of a subset of the cryptography aspects of
Packit 1b8c31
# the Java Security API. A provider may, for example, implement one or
Packit 1b8c31
# more digital signature algorithms or message digest algorithms.
Packit 1b8c31
#
Packit 1b8c31
# Each provider must implement a subclass of the Provider class.
Packit 1b8c31
# To register a provider in this master security properties file,
Packit 1b8c31
# specify the Provider subclass name and priority in the format
Packit 1b8c31
#
Packit 1b8c31
#    security.provider.<n>=<className>
Packit 1b8c31
#
Packit 1b8c31
# This declares a provider, and specifies its preference
Packit 1b8c31
# order n. The preference order is the order in which providers are
Packit 1b8c31
# searched for requested algorithms (when no specific provider is
Packit 1b8c31
# requested). The order is 1-based; 1 is the most preferred, followed
Packit 1b8c31
# by 2, and so on.
Packit 1b8c31
#
Packit 1b8c31
# <className> must specify the subclass of the Provider class whose
Packit 1b8c31
# constructor sets the values of various properties that are required
Packit 1b8c31
# for the Java Security API to look up the algorithms or other
Packit 1b8c31
# facilities implemented by the provider.
Packit 1b8c31
#
Packit 1b8c31
# There must be at least one provider specification in java.security.
Packit 1b8c31
# There is a default provider that comes standard with the JDK. It
Packit 1b8c31
# is called the "SUN" provider, and its Provider subclass
Packit 1b8c31
# named Sun appears in the sun.security.provider package. Thus, the
Packit 1b8c31
# "SUN" provider is registered via the following:
Packit 1b8c31
#
Packit 1b8c31
#    security.provider.1=sun.security.provider.Sun
Packit 1b8c31
#
Packit 1b8c31
# (The number 1 is used for the default provider.)
Packit 1b8c31
#
Packit 1b8c31
# Note: Providers can be dynamically registered instead by calls to
Packit 1b8c31
# either the addProvider or insertProviderAt method in the Security
Packit 1b8c31
# class.
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# List of providers and their preference orders (see above):
Packit 1b8c31
#
Packit 1b8c31
security.provider.1=sun.security.provider.Sun
Packit 1b8c31
security.provider.2=sun.security.rsa.SunRsaSign
Packit 1b8c31
security.provider.3=sun.security.ec.SunEC
Packit 1b8c31
security.provider.4=com.sun.net.ssl.internal.ssl.Provider
Packit 1b8c31
security.provider.5=com.sun.crypto.provider.SunJCE
Packit 1b8c31
security.provider.6=sun.security.jgss.SunProvider
Packit 1b8c31
security.provider.7=com.sun.security.sasl.Provider
Packit 1b8c31
security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI
Packit 1b8c31
security.provider.9=sun.security.smartcardio.SunPCSC
Packit 1b8c31
security.provider.10=sun.security.mscapi.SunMSCAPI
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Sun Provider SecureRandom seed source.
Packit 1b8c31
#
Packit 1b8c31
# Select the primary source of seed data for the "SHA1PRNG" and
Packit 1b8c31
# "NativePRNG" SecureRandom implementations in the "Sun" provider.
Packit 1b8c31
# (Other SecureRandom implementations might also use this property.)
Packit 1b8c31
#
Packit 1b8c31
# On Unix-like systems (for example, Solaris/Linux/MacOS), the
Packit 1b8c31
# "NativePRNG" and "SHA1PRNG" implementations obtains seed data from
Packit 1b8c31
# special device files such as file:/dev/random.
Packit 1b8c31
#
Packit 1b8c31
# On Windows systems, specifying the URLs "file:/dev/random" or
Packit 1b8c31
# "file:/dev/urandom" will enable the native Microsoft CryptoAPI seeding
Packit 1b8c31
# mechanism for SHA1PRNG.
Packit 1b8c31
#
Packit 1b8c31
# By default, an attempt is made to use the entropy gathering device
Packit 1b8c31
# specified by the "securerandom.source" Security property.  If an
Packit 1b8c31
# exception occurs while accessing the specified URL:
Packit 1b8c31
#
Packit 1b8c31
#     SHA1PRNG:
Packit 1b8c31
#         the traditional system/thread activity algorithm will be used.
Packit 1b8c31
#
Packit 1b8c31
#     NativePRNG:
Packit 1b8c31
#         a default value of /dev/random will be used.  If neither
Packit 1b8c31
#         are available, the implementation will be disabled.
Packit 1b8c31
#         "file" is the only currently supported protocol type.
Packit 1b8c31
#
Packit 1b8c31
# The entropy gathering device can also be specified with the System
Packit 1b8c31
# property "java.security.egd". For example:
Packit 1b8c31
#
Packit 1b8c31
#   % java -Djava.security.egd=file:/dev/random MainClass
Packit 1b8c31
#
Packit 1b8c31
# Specifying this System property will override the
Packit 1b8c31
# "securerandom.source" Security property.
Packit 1b8c31
#
Packit 1b8c31
# In addition, if "file:/dev/random" or "file:/dev/urandom" is
Packit 1b8c31
# specified, the "NativePRNG" implementation will be more preferred than
Packit 1b8c31
# SHA1PRNG in the Sun provider.
Packit 1b8c31
#
Packit 1b8c31
securerandom.source=file:/dev/random
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# A list of known strong SecureRandom implementations.
Packit 1b8c31
#
Packit 1b8c31
# To help guide applications in selecting a suitable strong
Packit 1b8c31
# java.security.SecureRandom implementation, Java distributions should
Packit 1b8c31
# indicate a list of known strong implementations using the property.
Packit 1b8c31
#
Packit 1b8c31
# This is a comma-separated list of algorithm and/or algorithm:provider
Packit 1b8c31
# entries.
Packit 1b8c31
#
Packit 1b8c31
securerandom.strongAlgorithms=Windows-PRNG:SunMSCAPI,SHA1PRNG:SUN
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Class to instantiate as the javax.security.auth.login.Configuration
Packit 1b8c31
# provider.
Packit 1b8c31
#
Packit 1b8c31
login.configuration.provider=sun.security.provider.ConfigFile
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Default login configuration file
Packit 1b8c31
#
Packit 1b8c31
#login.config.url.1=file:${user.home}/.java.login.config
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Class to instantiate as the system Policy. This is the name of the class
Packit 1b8c31
# that will be used as the Policy object.
Packit 1b8c31
#
Packit 1b8c31
policy.provider=sun.security.provider.PolicyFile
Packit 1b8c31
Packit 1b8c31
# The default is to have a single system-wide policy file,
Packit 1b8c31
# and a policy file in the user's home directory.
Packit 1b8c31
policy.url.1=file:${java.home}/lib/security/java.policy
Packit 1b8c31
policy.url.2=file:${user.home}/.java.policy
Packit 1b8c31
Packit 1b8c31
# whether or not we expand properties in the policy file
Packit 1b8c31
# if this is set to false, properties (${...}) will not be expanded in policy
Packit 1b8c31
# files.
Packit 1b8c31
policy.expandProperties=true
Packit 1b8c31
Packit 1b8c31
# whether or not we allow an extra policy to be passed on the command line
Packit 1b8c31
# with -Djava.security.policy=somefile. Comment out this line to disable
Packit 1b8c31
# this feature.
Packit 1b8c31
policy.allowSystemProperty=true
Packit 1b8c31
Packit 1b8c31
# whether or not we look into the IdentityScope for trusted Identities
Packit 1b8c31
# when encountering a 1.1 signed JAR file. If the identity is found
Packit 1b8c31
# and is trusted, we grant it AllPermission.
Packit 1b8c31
policy.ignoreIdentityScope=false
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Default keystore type.
Packit 1b8c31
#
Packit 1b8c31
keystore.type=jks
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Controls compatibility mode for the JKS keystore type.
Packit 1b8c31
#
Packit 1b8c31
# When set to 'true', the JKS keystore type supports loading
Packit 1b8c31
# keystore files in either JKS or PKCS12 format. When set to 'false'
Packit 1b8c31
# it supports loading only JKS keystore files.
Packit 1b8c31
#
Packit 1b8c31
keystore.type.compat=true
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# List of comma-separated packages that start with or equal this string
Packit 1b8c31
# will cause a security exception to be thrown when
Packit 1b8c31
# passed to checkPackageAccess unless the
Packit 1b8c31
# corresponding RuntimePermission ("accessClassInPackage."+package) has
Packit 1b8c31
# been granted.
Packit 1b8c31
package.access=sun.,\
Packit 1b8c31
               com.sun.xml.internal.,\
Packit 1b8c31
               com.sun.imageio.,\
Packit 1b8c31
               com.sun.istack.internal.,\
Packit 1b8c31
               com.sun.jmx.,\
Packit 1b8c31
               com.sun.media.sound.,\
Packit 1b8c31
               com.sun.naming.internal.,\
Packit 1b8c31
               com.sun.proxy.,\
Packit 1b8c31
               com.sun.corba.se.,\
Packit 1b8c31
               com.sun.org.apache.bcel.internal.,\
Packit 1b8c31
               com.sun.org.apache.regexp.internal.,\
Packit 1b8c31
               com.sun.org.apache.xerces.internal.,\
Packit 1b8c31
               com.sun.org.apache.xpath.internal.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.extensions.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.lib.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.res.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.templates.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.utils.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.xslt.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.xsltc.cmdline.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.xsltc.compiler.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.xsltc.trax.,\
Packit 1b8c31
               com.sun.org.apache.xalan.internal.xsltc.util.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.res.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.resolver.helpers.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.resolver.readers.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.security.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.serializer.utils.,\
Packit 1b8c31
               com.sun.org.apache.xml.internal.utils.,\
Packit 1b8c31
               com.sun.org.glassfish.,\
Packit 1b8c31
               com.oracle.xmlns.internal.,\
Packit 1b8c31
               com.oracle.webservices.internal.,\
Packit 1b8c31
               oracle.jrockit.jfr.,\
Packit 1b8c31
               org.jcp.xml.dsig.internal.,\
Packit 1b8c31
               jdk.internal.,\
Packit 1b8c31
               jdk.nashorn.internal.,\
Packit 1b8c31
               jdk.nashorn.tools.,\
Packit 1b8c31
               jdk.xml.internal.,\
Packit 1b8c31
               com.sun.activation.registries.,\
Packit 1b8c31
               com.sun.java.accessibility.,\
Packit 1b8c31
               jdk.jfr.events.,\
Packit 1b8c31
               jdk.jfr.internal.,\
Packit 1b8c31
               jdk.management.jfr.internal.
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# List of comma-separated packages that start with or equal this string
Packit 1b8c31
# will cause a security exception to be thrown when
Packit 1b8c31
# passed to checkPackageDefinition unless the
Packit 1b8c31
# corresponding RuntimePermission ("defineClassInPackage."+package) has
Packit 1b8c31
# been granted.
Packit 1b8c31
#
Packit 1b8c31
# by default, none of the class loaders supplied with the JDK call
Packit 1b8c31
# checkPackageDefinition.
Packit 1b8c31
#
Packit 1b8c31
package.definition=sun.,\
Packit 1b8c31
                   com.sun.xml.internal.,\
Packit 1b8c31
                   com.sun.imageio.,\
Packit 1b8c31
                   com.sun.istack.internal.,\
Packit 1b8c31
                   com.sun.jmx.,\
Packit 1b8c31
                   com.sun.media.sound.,\
Packit 1b8c31
                   com.sun.naming.internal.,\
Packit 1b8c31
                   com.sun.proxy.,\
Packit 1b8c31
                   com.sun.corba.se.,\
Packit 1b8c31
                   com.sun.org.apache.bcel.internal.,\
Packit 1b8c31
                   com.sun.org.apache.regexp.internal.,\
Packit 1b8c31
                   com.sun.org.apache.xerces.internal.,\
Packit 1b8c31
                   com.sun.org.apache.xpath.internal.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.extensions.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.lib.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.res.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.templates.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.utils.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.xslt.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.xsltc.cmdline.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.xsltc.compiler.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.xsltc.trax.,\
Packit 1b8c31
                   com.sun.org.apache.xalan.internal.xsltc.util.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.res.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.resolver.helpers.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.resolver.readers.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.security.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.serializer.utils.,\
Packit 1b8c31
                   com.sun.org.apache.xml.internal.utils.,\
Packit 1b8c31
                   com.sun.org.glassfish.,\
Packit 1b8c31
                   com.oracle.xmlns.internal.,\
Packit 1b8c31
                   com.oracle.webservices.internal.,\
Packit 1b8c31
                   oracle.jrockit.jfr.,\
Packit 1b8c31
                   org.jcp.xml.dsig.internal.,\
Packit 1b8c31
                   jdk.internal.,\
Packit 1b8c31
                   jdk.nashorn.internal.,\
Packit 1b8c31
                   jdk.nashorn.tools.,\
Packit 1b8c31
                   jdk.xml.internal.,\
Packit 1b8c31
                   com.sun.activation.registries.,\
Packit 1b8c31
                   com.sun.java.accessibility.,\
Packit 1b8c31
                   jdk.jfr.events.,\
Packit 1b8c31
                   jdk.jfr.internal.,\
Packit 1b8c31
                   jdk.management.jfr.internal.
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Determines whether this properties file can be appended to
Packit 1b8c31
# or overridden on the command line via -Djava.security.properties
Packit 1b8c31
#
Packit 1b8c31
security.overridePropertiesFile=true
Packit 1b8c31
Packit 1b8c31
#
Packit ac22b4
# Determines whether this properties file will be appended to
Packit ac22b4
# using the system properties file stored at
Packit ac22b4
# /etc/crypto-policies/back-ends/java.config
Packit ac22b4
#
Packit ac22b4
security.useSystemPropertiesFile=false
Packit ac22b4
Packit ac22b4
#
Packit 1b8c31
# Determines the default key and trust manager factory algorithms for
Packit 1b8c31
# the javax.net.ssl package.
Packit 1b8c31
#
Packit 1b8c31
ssl.KeyManagerFactory.algorithm=SunX509
Packit 1b8c31
ssl.TrustManagerFactory.algorithm=PKIX
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# The Java-level namelookup cache policy for successful lookups:
Packit 1b8c31
#
Packit 1b8c31
# any negative value: caching forever
Packit 1b8c31
# any positive value: the number of seconds to cache an address for
Packit 1b8c31
# zero: do not cache
Packit 1b8c31
#
Packit 1b8c31
# default value is forever (FOREVER). For security reasons, this
Packit 1b8c31
# caching is made forever when a security manager is set. When a security
Packit 1b8c31
# manager is not set, the default behavior in this implementation
Packit 1b8c31
# is to cache for 30 seconds.
Packit 1b8c31
#
Packit 1b8c31
# NOTE: setting this to anything other than the default value can have
Packit 1b8c31
#       serious security implications. Do not set it unless
Packit 1b8c31
#       you are sure you are not exposed to DNS spoofing attack.
Packit 1b8c31
#
Packit 1b8c31
#networkaddress.cache.ttl=-1
Packit 1b8c31
Packit 1b8c31
# The Java-level namelookup cache policy for failed lookups:
Packit 1b8c31
#
Packit 1b8c31
# any negative value: cache forever
Packit 1b8c31
# any positive value: the number of seconds to cache negative lookup results
Packit 1b8c31
# zero: do not cache
Packit 1b8c31
#
Packit 1b8c31
# In some Microsoft Windows networking environments that employ
Packit 1b8c31
# the WINS name service in addition to DNS, name service lookups
Packit 1b8c31
# that fail may take a noticeably long time to return (approx. 5 seconds).
Packit 1b8c31
# For this reason the default caching policy is to maintain these
Packit 1b8c31
# results for 10 seconds.
Packit 1b8c31
#
Packit 1b8c31
#
Packit 1b8c31
networkaddress.cache.negative.ttl=10
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Properties to configure OCSP for certificate revocation checking
Packit 1b8c31
#
Packit 1b8c31
Packit 1b8c31
# Enable OCSP
Packit 1b8c31
#
Packit 1b8c31
# By default, OCSP is not used for certificate revocation checking.
Packit 1b8c31
# This property enables the use of OCSP when set to the value "true".
Packit 1b8c31
#
Packit 1b8c31
# NOTE: SocketPermission is required to connect to an OCSP responder.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   ocsp.enable=true
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Location of the OCSP responder
Packit 1b8c31
#
Packit 1b8c31
# By default, the location of the OCSP responder is determined implicitly
Packit 1b8c31
# from the certificate being validated. This property explicitly specifies
Packit 1b8c31
# the location of the OCSP responder. The property is used when the
Packit 1b8c31
# Authority Information Access extension (defined in RFC 5280) is absent
Packit 1b8c31
# from the certificate or when it requires overriding.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   ocsp.responderURL=http://ocsp.example.net:80
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Subject name of the OCSP responder's certificate
Packit 1b8c31
#
Packit 1b8c31
# By default, the certificate of the OCSP responder is that of the issuer
Packit 1b8c31
# of the certificate being validated. This property identifies the certificate
Packit 1b8c31
# of the OCSP responder when the default does not apply. Its value is a string
Packit 1b8c31
# distinguished name (defined in RFC 2253) which identifies a certificate in
Packit 1b8c31
# the set of certificates supplied during cert path validation. In cases where
Packit 1b8c31
# the subject name alone is not sufficient to uniquely identify the certificate
Packit 1b8c31
# then both the "ocsp.responderCertIssuerName" and
Packit 1b8c31
# "ocsp.responderCertSerialNumber" properties must be used instead. When this
Packit 1b8c31
# property is set then those two properties are ignored.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   ocsp.responderCertSubjectName="CN=OCSP Responder, O=XYZ Corp"
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Issuer name of the OCSP responder's certificate
Packit 1b8c31
#
Packit 1b8c31
# By default, the certificate of the OCSP responder is that of the issuer
Packit 1b8c31
# of the certificate being validated. This property identifies the certificate
Packit 1b8c31
# of the OCSP responder when the default does not apply. Its value is a string
Packit 1b8c31
# distinguished name (defined in RFC 2253) which identifies a certificate in
Packit 1b8c31
# the set of certificates supplied during cert path validation. When this
Packit 1b8c31
# property is set then the "ocsp.responderCertSerialNumber" property must also
Packit 1b8c31
# be set. When the "ocsp.responderCertSubjectName" property is set then this
Packit 1b8c31
# property is ignored.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   ocsp.responderCertIssuerName="CN=Enterprise CA, O=XYZ Corp"
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Serial number of the OCSP responder's certificate
Packit 1b8c31
#
Packit 1b8c31
# By default, the certificate of the OCSP responder is that of the issuer
Packit 1b8c31
# of the certificate being validated. This property identifies the certificate
Packit 1b8c31
# of the OCSP responder when the default does not apply. Its value is a string
Packit 1b8c31
# of hexadecimal digits (colon or space separators may be present) which
Packit 1b8c31
# identifies a certificate in the set of certificates supplied during cert path
Packit 1b8c31
# validation. When this property is set then the "ocsp.responderCertIssuerName"
Packit 1b8c31
# property must also be set. When the "ocsp.responderCertSubjectName" property
Packit 1b8c31
# is set then this property is ignored.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   ocsp.responderCertSerialNumber=2A:FF:00
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Policy for failed Kerberos KDC lookups:
Packit 1b8c31
#
Packit 1b8c31
# When a KDC is unavailable (network error, service failure, etc), it is
Packit 1b8c31
# put inside a blacklist and accessed less often for future requests. The
Packit 1b8c31
# value (case-insensitive) for this policy can be:
Packit 1b8c31
#
Packit 1b8c31
# tryLast
Packit 1b8c31
#    KDCs in the blacklist are always tried after those not on the list.
Packit 1b8c31
#
Packit 1b8c31
# tryLess[:max_retries,timeout]
Packit 1b8c31
#    KDCs in the blacklist are still tried by their order in the configuration,
Packit 1b8c31
#    but with smaller max_retries and timeout values. max_retries and timeout
Packit 1b8c31
#    are optional numerical parameters (default 1 and 5000, which means once
Packit 1b8c31
#    and 5 seconds). Please notes that if any of the values defined here is
Packit 1b8c31
#    more than what is defined in krb5.conf, it will be ignored.
Packit 1b8c31
#
Packit 1b8c31
# Whenever a KDC is detected as available, it is removed from the blacklist.
Packit 1b8c31
# The blacklist is reset when krb5.conf is reloaded. You can add
Packit 1b8c31
# refreshKrb5Config=true to a JAAS configuration file so that krb5.conf is
Packit 1b8c31
# reloaded whenever a JAAS authentication is attempted.
Packit 1b8c31
#
Packit 1b8c31
# Example,
Packit 1b8c31
#   krb5.kdc.bad.policy = tryLast
Packit 1b8c31
#   krb5.kdc.bad.policy = tryLess:2,2000
Packit 1b8c31
krb5.kdc.bad.policy = tryLast
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Kerberos cross-realm referrals (RFC 6806)
Packit 1b8c31
#
Packit 1b8c31
# OpenJDK's Kerberos client supports cross-realm referrals as defined in
Packit 1b8c31
# RFC 6806. This allows to setup more dynamic environments in which clients
Packit 1b8c31
# do not need to know in advance how to reach the realm of a target principal
Packit 1b8c31
# (either a user or service).
Packit 1b8c31
#
Packit 1b8c31
# When a client issues an AS or a TGS request, the "canonicalize" option
Packit 1b8c31
# is set to announce support of this feature. A KDC server may fulfill the
Packit 1b8c31
# request or reply referring the client to a different one. If referred,
Packit 1b8c31
# the client will issue a new request and the cycle repeats.
Packit 1b8c31
#
Packit 1b8c31
# In addition to referrals, the "canonicalize" option allows the KDC server
Packit 1b8c31
# to change the client name in response to an AS request. For security reasons,
Packit 1b8c31
# RFC 6806 (section 11) FAST scheme is enforced.
Packit 1b8c31
#
Packit 1b8c31
# Disable Kerberos cross-realm referrals. Value may be overwritten with a
Packit 1b8c31
# System property (-Dsun.security.krb5.disableReferrals).
Packit 1b8c31
sun.security.krb5.disableReferrals=false
Packit 1b8c31
Packit 1b8c31
# Maximum number of AS or TGS referrals to avoid infinite loops. Value may
Packit 1b8c31
# be overwritten with a System property (-Dsun.security.krb5.maxReferrals).
Packit 1b8c31
sun.security.krb5.maxReferrals=5
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Algorithm restrictions for certification path (CertPath) processing
Packit 1b8c31
#
Packit 1b8c31
# In some environments, certain algorithms or key lengths may be undesirable
Packit 1b8c31
# for certification path building and validation.  For example, "MD2" is
Packit 1b8c31
# generally no longer considered to be a secure hash algorithm.  This section
Packit 1b8c31
# describes the mechanism for disabling algorithms based on algorithm name
Packit 1b8c31
# and/or key length.  This includes algorithms used in certificates, as well
Packit 1b8c31
# as revocation information such as CRLs and signed OCSP Responses.
Packit 1b8c31
# The syntax of the disabled algorithm string is described as follows:
Packit 1b8c31
#   DisabledAlgorithms:
Packit 1b8c31
#       " DisabledAlgorithm { , DisabledAlgorithm } "
Packit 1b8c31
#
Packit 1b8c31
#   DisabledAlgorithm:
Packit 1b8c31
#       AlgorithmName [Constraint] { '&' Constraint }
Packit 1b8c31
#
Packit 1b8c31
#   AlgorithmName:
Packit 1b8c31
#       (see below)
Packit 1b8c31
#
Packit 1b8c31
#   Constraint:
Packit 1b8c31
#       KeySizeConstraint | CAConstraint | DenyAfterConstraint |
Packit 1b8c31
#       UsageConstraint
Packit 1b8c31
#
Packit 1b8c31
#   KeySizeConstraint:
Packit 1b8c31
#       keySize Operator KeyLength
Packit 1b8c31
#
Packit 1b8c31
#   Operator:
Packit 1b8c31
#       <= | < | == | != | >= | >
Packit 1b8c31
#
Packit 1b8c31
#   KeyLength:
Packit 1b8c31
#       Integer value of the algorithm's key length in bits
Packit 1b8c31
#
Packit 1b8c31
#   CAConstraint:
Packit 1b8c31
#       jdkCA
Packit 1b8c31
#
Packit 1b8c31
#   DenyAfterConstraint:
Packit 1b8c31
#       denyAfter YYYY-MM-DD
Packit 1b8c31
#
Packit 1b8c31
#   UsageConstraint:
Packit 1b8c31
#       usage [TLSServer] [TLSClient] [SignedJAR]
Packit 1b8c31
#
Packit 1b8c31
# The "AlgorithmName" is the standard algorithm name of the disabled
Packit 1b8c31
# algorithm. See "Java Cryptography Architecture Standard Algorithm Name
Packit 1b8c31
# Documentation" for information about Standard Algorithm Names.  Matching
Packit 1b8c31
# is performed using a case-insensitive sub-element matching rule.  (For
Packit 1b8c31
# example, in "SHA1withECDSA" the sub-elements are "SHA1" for hashing and
Packit 1b8c31
# "ECDSA" for signatures.)  If the assertion "AlgorithmName" is a
Packit 1b8c31
# sub-element of the certificate algorithm name, the algorithm will be
Packit 1b8c31
# rejected during certification path building and validation.  For example,
Packit 1b8c31
# the assertion algorithm name "DSA" will disable all certificate algorithms
Packit 1b8c31
# that rely on DSA, such as NONEwithDSA, SHA1withDSA.  However, the assertion
Packit 1b8c31
# will not disable algorithms related to "ECDSA".
Packit 1b8c31
#
Packit 1b8c31
# A "Constraint" defines restrictions on the keys and/or certificates for
Packit 1b8c31
# a specified AlgorithmName:
Packit 1b8c31
#
Packit 1b8c31
#   KeySizeConstraint:
Packit 1b8c31
#     keySize Operator KeyLength
Packit 1b8c31
#       The constraint requires a key of a valid size range if the
Packit 1b8c31
#       "AlgorithmName" is of a key algorithm.  The "KeyLength" indicates
Packit 1b8c31
#       the key size specified in number of bits.  For example,
Packit 1b8c31
#       "RSA keySize <= 1024" indicates that any RSA key with key size less
Packit 1b8c31
#       than or equal to 1024 bits should be disabled, and
Packit 1b8c31
#       "RSA keySize < 1024, RSA keySize > 2048" indicates that any RSA key
Packit 1b8c31
#       with key size less than 1024 or greater than 2048 should be disabled.
Packit 1b8c31
#       This constraint is only used on algorithms that have a key size.
Packit 1b8c31
#
Packit 1b8c31
#   CAConstraint:
Packit 1b8c31
#     jdkCA
Packit 1b8c31
#       This constraint prohibits the specified algorithm only if the
Packit 1b8c31
#       algorithm is used in a certificate chain that terminates at a marked
Packit 1b8c31
#       trust anchor in the lib/security/cacerts keystore.  If the jdkCA
Packit 1b8c31
#       constraint is not set, then all chains using the specified algorithm
Packit 1b8c31
#       are restricted.  jdkCA may only be used once in a DisabledAlgorithm
Packit 1b8c31
#       expression.
Packit 1b8c31
#       Example:  To apply this constraint to SHA-1 certificates, include
Packit 1b8c31
#       the following:  "SHA1 jdkCA"
Packit 1b8c31
#
Packit 1b8c31
#   DenyAfterConstraint:
Packit 1b8c31
#     denyAfter YYYY-MM-DD
Packit 1b8c31
#       This constraint prohibits a certificate with the specified algorithm
Packit 1b8c31
#       from being used after the date regardless of the certificate's
Packit 1b8c31
#       validity.  JAR files that are signed and timestamped before the
Packit 1b8c31
#       constraint date with certificates containing the disabled algorithm
Packit 1b8c31
#       will not be restricted.  The date is processed in the UTC timezone.
Packit 1b8c31
#       This constraint can only be used once in a DisabledAlgorithm
Packit 1b8c31
#       expression.
Packit 1b8c31
#       Example:  To deny usage of RSA 2048 bit certificates after Feb 3 2020,
Packit 1b8c31
#       use the following:  "RSA keySize == 2048 & denyAfter 2020-02-03"
Packit 1b8c31
#
Packit 1b8c31
#   UsageConstraint:
Packit 1b8c31
#     usage [TLSServer] [TLSClient] [SignedJAR]
Packit 1b8c31
#       This constraint prohibits the specified algorithm for
Packit 1b8c31
#       a specified usage.  This should be used when disabling an algorithm
Packit 1b8c31
#       for all usages is not practical. 'TLSServer' restricts the algorithm
Packit 1b8c31
#       in TLS server certificate chains when server authentication is
Packit 1b8c31
#       performed. 'TLSClient' restricts the algorithm in TLS client
Packit 1b8c31
#       certificate chains when client authentication is performed.
Packit 1b8c31
#       'SignedJAR' constrains use of certificates in signed jar files.
Packit 1b8c31
#       The usage type follows the keyword and more than one usage type can
Packit 1b8c31
#       be specified with a whitespace delimiter.
Packit 1b8c31
#       Example:  "SHA1 usage TLSServer TLSClient"
Packit 1b8c31
#
Packit 1b8c31
# When an algorithm must satisfy more than one constraint, it must be
Packit 1b8c31
# delimited by an ampersand '&'.  For example, to restrict certificates in a
Packit 1b8c31
# chain that terminate at a distribution provided trust anchor and contain
Packit 1b8c31
# RSA keys that are less than or equal to 1024 bits, add the following
Packit 1b8c31
# constraint:  "RSA keySize <= 1024 & jdkCA".
Packit 1b8c31
#
Packit 1b8c31
# All DisabledAlgorithms expressions are processed in the order defined in the
Packit 1b8c31
# property.  This requires lower keysize constraints to be specified
Packit 1b8c31
# before larger keysize constraints of the same algorithm.  For example:
Packit 1b8c31
# "RSA keySize < 1024 & jdkCA, RSA keySize < 2048".
Packit 1b8c31
#
Packit 1b8c31
# Note: The algorithm restrictions do not apply to trust anchors or
Packit 1b8c31
# self-signed certificates.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by Oracle's PKIX implementation. It
Packit 1b8c31
# is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
# Example:
Packit 1b8c31
#   jdk.certpath.disabledAlgorithms=MD2, DSA, RSA keySize < 2048
Packit 1b8c31
#
Packit 1b8c31
#
Packit 1b8c31
jdk.certpath.disabledAlgorithms=MD2, MD5, SHA1 jdkCA & usage TLSServer, \
Packit 1b8c31
    RSA keySize < 1024, DSA keySize < 1024, EC keySize < 224
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Algorithm restrictions for signed JAR files
Packit 1b8c31
#
Packit 1b8c31
# In some environments, certain algorithms or key lengths may be undesirable
Packit 1b8c31
# for signed JAR validation.  For example, "MD2" is generally no longer
Packit 1b8c31
# considered to be a secure hash algorithm.  This section describes the
Packit 1b8c31
# mechanism for disabling algorithms based on algorithm name and/or key length.
Packit 1b8c31
# JARs signed with any of the disabled algorithms or key sizes will be treated
Packit 1b8c31
# as unsigned.
Packit 1b8c31
#
Packit 1b8c31
# The syntax of the disabled algorithm string is described as follows:
Packit 1b8c31
#   DisabledAlgorithms:
Packit 1b8c31
#       " DisabledAlgorithm { , DisabledAlgorithm } "
Packit 1b8c31
#
Packit 1b8c31
#   DisabledAlgorithm:
Packit 1b8c31
#       AlgorithmName [Constraint] { '&' Constraint }
Packit 1b8c31
#
Packit 1b8c31
#   AlgorithmName:
Packit 1b8c31
#       (see below)
Packit 1b8c31
#
Packit 1b8c31
#   Constraint:
Packit 1b8c31
#       KeySizeConstraint | DenyAfterConstraint
Packit 1b8c31
#
Packit 1b8c31
#   KeySizeConstraint:
Packit 1b8c31
#       keySize Operator KeyLength
Packit 1b8c31
#
Packit 1b8c31
#   DenyAfterConstraint:
Packit 1b8c31
#       denyAfter YYYY-MM-DD
Packit 1b8c31
#
Packit 1b8c31
#   Operator:
Packit 1b8c31
#       <= | < | == | != | >= | >
Packit 1b8c31
#
Packit 1b8c31
#   KeyLength:
Packit 1b8c31
#       Integer value of the algorithm's key length in bits
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference
Packit 1b8c31
# implementation. It is not guaranteed to be examined and used by other
Packit 1b8c31
# implementations.
Packit 1b8c31
#
Packit 1b8c31
# See "jdk.certpath.disabledAlgorithms" for syntax descriptions.
Packit 1b8c31
#
Packit 1b8c31
jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, DSA keySize < 1024
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Algorithm restrictions for Secure Socket Layer/Transport Layer Security
Packit 1b8c31
# (SSL/TLS) processing
Packit 1b8c31
#
Packit 1b8c31
# In some environments, certain algorithms or key lengths may be undesirable
Packit 1b8c31
# when using SSL/TLS.  This section describes the mechanism for disabling
Packit 1b8c31
# algorithms during SSL/TLS security parameters negotiation, including
Packit 1b8c31
# protocol version negotiation, cipher suites selection, peer authentication
Packit 1b8c31
# and key exchange mechanisms.
Packit 1b8c31
#
Packit 1b8c31
# Disabled algorithms will not be negotiated for SSL/TLS connections, even
Packit 1b8c31
# if they are enabled explicitly in an application.
Packit 1b8c31
#
Packit 1b8c31
# For PKI-based peer authentication and key exchange mechanisms, this list
Packit 1b8c31
# of disabled algorithms will also be checked during certification path
Packit 1b8c31
# building and validation, including algorithms used in certificates, as
Packit 1b8c31
# well as revocation information such as CRLs and signed OCSP Responses.
Packit 1b8c31
# This is in addition to the jdk.certpath.disabledAlgorithms property above.
Packit 1b8c31
#
Packit 1b8c31
# See the specification of "jdk.certpath.disabledAlgorithms" for the
Packit 1b8c31
# syntax of the disabled algorithm string.
Packit 1b8c31
#
Packit 1b8c31
# Note: The algorithm restrictions do not apply to trust anchors or
Packit 1b8c31
# self-signed certificates.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
# Example:
Packit 1b8c31
#   jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048
Packit 1b8c31
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, DH keySize < 1024, \
Packit 1b8c31
    EC keySize < 224, 3DES_EDE_CBC, anon, NULL
Packit 1b8c31
Packit 1b8c31
# Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS)
Packit 1b8c31
# processing in JSSE implementation.
Packit 1b8c31
#
Packit 1b8c31
# In some environments, a certain algorithm may be undesirable but it
Packit 1b8c31
# cannot be disabled because of its use in legacy applications.  Legacy
Packit 1b8c31
# algorithms may still be supported, but applications should not use them
Packit 1b8c31
# as the security strength of legacy algorithms are usually not strong enough
Packit 1b8c31
# in practice.
Packit 1b8c31
#
Packit 1b8c31
# During SSL/TLS security parameters negotiation, legacy algorithms will
Packit 1b8c31
# not be negotiated unless there are no other candidates.
Packit 1b8c31
#
Packit 1b8c31
# The syntax of the legacy algorithms string is described as this Java
Packit 1b8c31
# BNF-style:
Packit 1b8c31
#   LegacyAlgorithms:
Packit 1b8c31
#       " LegacyAlgorithm { , LegacyAlgorithm } "
Packit 1b8c31
#
Packit 1b8c31
#   LegacyAlgorithm:
Packit 1b8c31
#       AlgorithmName (standard JSSE algorithm name)
Packit 1b8c31
#
Packit 1b8c31
# See the specification of security property "jdk.certpath.disabledAlgorithms"
Packit 1b8c31
# for the syntax and description of the "AlgorithmName" notation.
Packit 1b8c31
#
Packit 1b8c31
# Per SSL/TLS specifications, cipher suites have the form:
Packit 1b8c31
#       SSL_KeyExchangeAlg_WITH_CipherAlg_MacAlg
Packit 1b8c31
# or
Packit 1b8c31
#       TLS_KeyExchangeAlg_WITH_CipherAlg_MacAlg
Packit 1b8c31
#
Packit 1b8c31
# For example, the cipher suite TLS_RSA_WITH_AES_128_CBC_SHA uses RSA as the
Packit 1b8c31
# key exchange algorithm, AES_128_CBC (128 bits AES cipher algorithm in CBC
Packit 1b8c31
# mode) as the cipher (encryption) algorithm, and SHA-1 as the message digest
Packit 1b8c31
# algorithm for HMAC.
Packit 1b8c31
#
Packit 1b8c31
# The LegacyAlgorithm can be one of the following standard algorithm names:
Packit 1b8c31
#     1. JSSE cipher suite name, e.g., TLS_RSA_WITH_AES_128_CBC_SHA
Packit 1b8c31
#     2. JSSE key exchange algorithm name, e.g., RSA
Packit 1b8c31
#     3. JSSE cipher (encryption) algorithm name, e.g., AES_128_CBC
Packit 1b8c31
#     4. JSSE message digest algorithm name, e.g., SHA
Packit 1b8c31
#
Packit 1b8c31
# See SSL/TLS specifications and "Java Cryptography Architecture Standard
Packit 1b8c31
# Algorithm Name Documentation" for information about the algorithm names.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
# There is no guarantee the property will continue to exist or be of the
Packit 1b8c31
# same syntax in future releases.
Packit 1b8c31
#
Packit 1b8c31
# Example:
Packit 1b8c31
#   jdk.tls.legacyAlgorithms=DH_anon, DES_CBC, SSL_RSA_WITH_RC4_128_MD5
Packit 1b8c31
#
Packit 1b8c31
jdk.tls.legacyAlgorithms= \
Packit 1b8c31
        K_NULL, C_NULL, M_NULL, \
Packit 1b8c31
        DH_anon, ECDH_anon, \
Packit 1b8c31
        RC4_128, RC4_40, DES_CBC, DES40_CBC, \
Packit 1b8c31
        3DES_EDE_CBC
Packit 1b8c31
Packit 1b8c31
# The pre-defined default finite field Diffie-Hellman ephemeral (DHE)
Packit 1b8c31
# parameters for Transport Layer Security (SSL/TLS/DTLS) processing.
Packit 1b8c31
#
Packit 1b8c31
# In traditional SSL/TLS/DTLS connections where finite field DHE parameters
Packit 1b8c31
# negotiation mechanism is not used, the server offers the client group
Packit 1b8c31
# parameters, base generator g and prime modulus p, for DHE key exchange.
Packit 1b8c31
# It is recommended to use dynamic group parameters.  This property defines
Packit 1b8c31
# a mechanism that allows you to specify custom group parameters.
Packit 1b8c31
#
Packit 1b8c31
# The syntax of this property string is described as this Java BNF-style:
Packit 1b8c31
#   DefaultDHEParameters:
Packit 1b8c31
#       DefinedDHEParameters { , DefinedDHEParameters }
Packit 1b8c31
#
Packit 1b8c31
#   DefinedDHEParameters:
Packit 1b8c31
#       "{" DHEPrimeModulus , DHEBaseGenerator "}"
Packit 1b8c31
#
Packit 1b8c31
#   DHEPrimeModulus:
Packit 1b8c31
#       HexadecimalDigits
Packit 1b8c31
#
Packit 1b8c31
#   DHEBaseGenerator:
Packit 1b8c31
#       HexadecimalDigits
Packit 1b8c31
#
Packit 1b8c31
#   HexadecimalDigits:
Packit 1b8c31
#       HexadecimalDigit { HexadecimalDigit }
Packit 1b8c31
#
Packit 1b8c31
#   HexadecimalDigit: one of
Packit 1b8c31
#       0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f
Packit 1b8c31
#
Packit 1b8c31
# Whitespace characters are ignored.
Packit 1b8c31
#
Packit 1b8c31
# The "DefinedDHEParameters" defines the custom group parameters, prime
Packit 1b8c31
# modulus p and base generator g, for a particular size of prime modulus p.
Packit 1b8c31
# The "DHEPrimeModulus" defines the hexadecimal prime modulus p, and the
Packit 1b8c31
# "DHEBaseGenerator" defines the hexadecimal base generator g of a group
Packit 1b8c31
# parameter.  It is recommended to use safe primes for the custom group
Packit 1b8c31
# parameters.
Packit 1b8c31
#
Packit 1b8c31
# If this property is not defined or the value is empty, the underlying JSSE
Packit 1b8c31
# provider's default group parameter is used for each connection.
Packit 1b8c31
#
Packit 1b8c31
# If the property value does not follow the grammar, or a particular group
Packit 1b8c31
# parameter is not valid, the connection will fall back and use the
Packit 1b8c31
# underlying JSSE provider's default group parameter.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by OpenJDK's JSSE implementation. It
Packit 1b8c31
# is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
# Example:
Packit 1b8c31
#   jdk.tls.server.defaultDHEParameters=
Packit 1b8c31
#       { \
Packit 1b8c31
#       FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 \
Packit 1b8c31
#       29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD \
Packit 1b8c31
#       EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 \
Packit 1b8c31
#       E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED \
Packit 1b8c31
#       EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 \
Packit 1b8c31
#       FFFFFFFF FFFFFFFF, 2}
Packit 1b8c31
Packit 1b8c31
# Cryptographic Jurisdiction Policy defaults
Packit 1b8c31
#
Packit 1b8c31
# Import and export control rules on cryptographic software vary from
Packit 1b8c31
# country to country.  By default, the JDK provides two different sets of
Packit 1b8c31
# cryptographic policy files:
Packit 1b8c31
#
Packit 1b8c31
#     unlimited:  These policy files contain no restrictions on cryptographic
Packit 1b8c31
#                 strengths or algorithms.
Packit 1b8c31
#
Packit 1b8c31
#     limited:    These policy files contain more restricted cryptographic
Packit 1b8c31
#                 strengths, and are still available if your country or
Packit 1b8c31
#                 usage requires the traditional restrictive policy.
Packit 1b8c31
#
Packit 1b8c31
# The JDK JCE framework uses the unlimited policy files by default.
Packit 1b8c31
# However the user may explicitly choose a set either by defining the
Packit 1b8c31
# "crypto.policy" Security property or by installing valid JCE policy
Packit 1b8c31
# jar files into the traditional JDK installation location.  To better
Packit 1b8c31
# support older JDK Update releases, the "crypto.policy" property is not
Packit 1b8c31
# defined by default.  See below for more information.
Packit 1b8c31
#
Packit 1b8c31
# The following logic determines which policy files are used:
Packit 1b8c31
#
Packit 1b8c31
#         <java-home> refers to the directory where the JRE was
Packit 1b8c31
#         installed and may be determined using the "java.home"
Packit 1b8c31
#         System property.
Packit 1b8c31
#
Packit 1b8c31
# 1.  If the Security property "crypto.policy" has been defined,
Packit 1b8c31
#     then the following mechanism is used:
Packit 1b8c31
#
Packit 1b8c31
#     The policy files are stored as jar files in subdirectories of
Packit 1b8c31
# <java-home>/lib/security/policy.  Each directory contains a complete
Packit 1b8c31
# set of policy files.
Packit 1b8c31
#
Packit 1b8c31
#     The "crypto.policy" Security property controls the directory
Packit 1b8c31
#     selection, and thus the effective cryptographic policy.
Packit 1b8c31
#
Packit 1b8c31
# The default set of directories is:
Packit 1b8c31
#
Packit 1b8c31
#     limited | unlimited
Packit 1b8c31
#
Packit 1b8c31
# 2.  If the "crypto.policy" property is not set and the traditional
Packit 1b8c31
#     US_export_policy.jar and local_policy.jar files
Packit 1b8c31
#     (e.g. limited/unlimited) are found in the legacy
Packit 1b8c31
#     <java-home>/lib/security directory, then the rules embedded within
Packit 1b8c31
#     those jar files will be used. This helps preserve compatibility
Packit 1b8c31
# for users upgrading from an older installation.
Packit 1b8c31
#
Packit 1b8c31
# 3.  If the jar files are not present in the legacy location
Packit 1b8c31
#     and the "crypto.policy" Security property is not defined,
Packit 1b8c31
#     then the JDK will use the unlimited settings (equivalent to
Packit 1b8c31
#     crypto.policy=unlimited)
Packit 1b8c31
#
Packit 1b8c31
# Please see the JCA documentation for additional information on these
Packit 1b8c31
# files and formats.
Packit 1b8c31
#
Packit 1b8c31
# YOU ARE ADVISED TO CONSULT YOUR EXPORT/IMPORT CONTROL COUNSEL OR ATTORNEY
Packit 1b8c31
# TO DETERMINE THE EXACT REQUIREMENTS.
Packit 1b8c31
#
Packit 1b8c31
# Please note that the JCE for Java SE, including the JCE framework,
Packit 1b8c31
# cryptographic policy files, and standard JCE providers provided with
Packit 1b8c31
# the Java SE, have been reviewed and approved for export as mass market
Packit 1b8c31
# encryption item by the US Bureau of Industry and Security.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
#crypto.policy=unlimited
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# The policy for the XML Signature secure validation mode. The mode is
Packit 1b8c31
# enabled by setting the property "org.jcp.xml.dsig.secureValidation" to
Packit 1b8c31
# true with the javax.xml.crypto.XMLCryptoContext.setProperty() method,
Packit 1b8c31
# or by running the code with a SecurityManager.
Packit 1b8c31
#
Packit 1b8c31
#   Policy:
Packit 1b8c31
#       Constraint {"," Constraint }
Packit 1b8c31
#   Constraint:
Packit 1b8c31
#       AlgConstraint | MaxTransformsConstraint | MaxReferencesConstraint |
Packit 1b8c31
#       ReferenceUriSchemeConstraint | KeySizeConstraint | OtherConstraint
Packit 1b8c31
#   AlgConstraint
Packit 1b8c31
#       "disallowAlg" Uri
Packit 1b8c31
#   MaxTransformsConstraint:
Packit 1b8c31
#       "maxTransforms" Integer
Packit 1b8c31
#   MaxReferencesConstraint:
Packit 1b8c31
#       "maxReferences" Integer
Packit 1b8c31
#   ReferenceUriSchemeConstraint:
Packit 1b8c31
#       "disallowReferenceUriSchemes" String { String }
Packit 1b8c31
#   KeySizeConstraint:
Packit 1b8c31
#       "minKeySize" KeyAlg Integer
Packit 1b8c31
#   OtherConstraint:
Packit 1b8c31
#       "noDuplicateIds" | "noRetrievalMethodLoops"
Packit 1b8c31
#
Packit 1b8c31
# For AlgConstraint, Uri is the algorithm URI String that is not allowed.
Packit 1b8c31
# See the XML Signature Recommendation for more information on algorithm
Packit 1b8c31
# URI Identifiers. For KeySizeConstraint, KeyAlg is the standard algorithm
Packit 1b8c31
# name of the key type (ex: "RSA"). If the MaxTransformsConstraint,
Packit 1b8c31
# MaxReferencesConstraint or KeySizeConstraint (for the same key type) is
Packit 1b8c31
# specified more than once, only the last entry is enforced.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation. It
Packit 1b8c31
# is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
jdk.xml.dsig.secureValidationPolicy=\
Packit 1b8c31
    disallowAlg http://www.w3.org/TR/1999/REC-xslt-19991116,\
Packit 1b8c31
    disallowAlg http://www.w3.org/2001/04/xmldsig-more#rsa-md5,\
Packit 1b8c31
    disallowAlg http://www.w3.org/2001/04/xmldsig-more#hmac-md5,\
Packit 1b8c31
    disallowAlg http://www.w3.org/2001/04/xmldsig-more#md5,\
Packit 1b8c31
    maxTransforms 5,\
Packit 1b8c31
    maxReferences 30,\
Packit 1b8c31
    disallowReferenceUriSchemes file http https,\
Packit 1b8c31
    minKeySize RSA 1024,\
Packit 1b8c31
    minKeySize DSA 1024,\
Packit 1b8c31
    minKeySize EC 224,\
Packit 1b8c31
    noDuplicateIds,\
Packit 1b8c31
    noRetrievalMethodLoops
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Serialization process-wide filter
Packit 1b8c31
#
Packit 1b8c31
# A filter, if configured, is used by java.io.ObjectInputStream during
Packit 1b8c31
# deserialization to check the contents of the stream.
Packit 1b8c31
# A filter is configured as a sequence of patterns, each pattern is either
Packit 1b8c31
# matched against the name of a class in the stream or defines a limit.
Packit 1b8c31
# Patterns are separated by ";" (semicolon).
Packit 1b8c31
# Whitespace is significant and is considered part of the pattern.
Packit 1b8c31
#
Packit 1b8c31
# If the system property jdk.serialFilter is also specified on the command
Packit 1b8c31
# line, it supersedes the security property value defined here.
Packit 1b8c31
#
Packit 1b8c31
# If a pattern includes a "=", it sets a limit.
Packit 1b8c31
# If a limit appears more than once the last value is used.
Packit 1b8c31
# Limits are checked before classes regardless of the order in the sequence of patterns.
Packit 1b8c31
# If any of the limits are exceeded, the filter status is REJECTED.
Packit 1b8c31
#
Packit 1b8c31
#   maxdepth=value - the maximum depth of a graph
Packit 1b8c31
#   maxrefs=value  - the maximum number of internal references
Packit 1b8c31
#   maxbytes=value - the maximum number of bytes in the input stream
Packit 1b8c31
#   maxarray=value - the maximum array length allowed
Packit 1b8c31
#
Packit 1b8c31
# Other patterns, from left to right, match the class or package name as
Packit 1b8c31
# returned from Class.getName.
Packit 1b8c31
# If the class is an array type, the class or package to be matched is the element type.
Packit 1b8c31
# Arrays of any number of dimensions are treated the same as the element type.
Packit 1b8c31
# For example, a pattern of "!example.Foo", rejects creation of any instance or
Packit 1b8c31
# array of example.Foo.
Packit 1b8c31
#
Packit 1b8c31
# If the pattern starts with "!", the status is REJECTED if the remaining pattern
Packit 1b8c31
#   is matched; otherwise the status is ALLOWED if the pattern matches.
Packit 1b8c31
# If the pattern ends with ".**" it matches any class in the package and all subpackages.
Packit 1b8c31
# If the pattern ends with ".*" it matches any class in the package.
Packit 1b8c31
# If the pattern ends with "*", it matches any class with the pattern as a prefix.
Packit 1b8c31
# If the pattern is equal to the class name, it matches.
Packit 1b8c31
# Otherwise, the status is UNDECIDED.
Packit 1b8c31
#
Packit 1b8c31
#jdk.serialFilter=pattern;pattern
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# RMI Registry Serial Filter
Packit 1b8c31
#
Packit 1b8c31
# The filter pattern uses the same format as jdk.serialFilter.
Packit 1b8c31
# This filter can override the builtin filter if additional types need to be
Packit 1b8c31
# allowed or rejected from the RMI Registry or to decrease limits but not
Packit 1b8c31
# to increase limits.
Packit 1b8c31
# If the limits (maxdepth, maxrefs, or maxbytes) are exceeded, the object is rejected.
Packit 1b8c31
#
Packit 1b8c31
# Each non-array type is allowed or rejected if it matches one of the patterns,
Packit 1b8c31
# evaluated from left to right, and is otherwise allowed. Arrays of any
Packit 1b8c31
# component type, including subarrays and arrays of primitives, are allowed.
Packit 1b8c31
#
Packit 1b8c31
# Array construction of any component type, including subarrays and arrays of
Packit 1b8c31
# primitives, are allowed unless the length is greater than the maxarray limit.
Packit 1b8c31
# The filter is applied to each array element.
Packit 1b8c31
#
Packit 1b8c31
# The built-in filter allows subclasses of allowed classes and
Packit 1b8c31
# can approximately be represented as the pattern:
Packit 1b8c31
#
Packit 1b8c31
#sun.rmi.registry.registryFilter=\
Packit 1b8c31
#    maxarray=1000000;\
Packit 1b8c31
#    maxdepth=20;\
Packit 1b8c31
#    java.lang.String;\
Packit 1b8c31
#    java.lang.Number;\
Packit 1b8c31
#    java.lang.reflect.Proxy;\
Packit 1b8c31
#    java.rmi.Remote;\
Packit 1b8c31
#    sun.rmi.server.UnicastRef;\
Packit 1b8c31
#    sun.rmi.server.RMIClientSocketFactory;\
Packit 1b8c31
#    sun.rmi.server.RMIServerSocketFactory;\
Packit 1b8c31
#    java.rmi.activation.ActivationID;\
Packit 1b8c31
#    java.rmi.server.UID
Packit 1b8c31
#
Packit 1b8c31
# RMI Distributed Garbage Collector (DGC) Serial Filter
Packit 1b8c31
#
Packit 1b8c31
# The filter pattern uses the same format as jdk.serialFilter.
Packit 1b8c31
# This filter can override the builtin filter if additional types need to be
Packit 1b8c31
# allowed or rejected from the RMI DGC.
Packit 1b8c31
#
Packit 1b8c31
# The builtin DGC filter can approximately be represented as the filter pattern:
Packit 1b8c31
#
Packit 1b8c31
#sun.rmi.transport.dgcFilter=\
Packit 1b8c31
#    java.rmi.server.ObjID;\
Packit 1b8c31
#    java.rmi.server.UID;\
Packit 1b8c31
#    java.rmi.dgc.VMID;\
Packit 1b8c31
#    java.rmi.dgc.Lease;\
Packit 1b8c31
#    maxdepth=5;maxarray=10000
Packit 1b8c31
Packit 1b8c31
# CORBA ORBIorTypeCheckRegistryFilter
Packit 1b8c31
# Type check enhancement for ORB::string_to_object processing
Packit 1b8c31
#
Packit 1b8c31
# An IOR type check filter, if configured, is used by an ORB during
Packit 1b8c31
# an ORB::string_to_object invocation to check the veracity of the type encoded
Packit 1b8c31
# in the ior string.
Packit 1b8c31
#
Packit 1b8c31
# The filter pattern consists of a semi-colon separated list of class names.
Packit 1b8c31
# The configured list contains the binary class names of the IDL interface types
Packit 1b8c31
# corresponding to the IDL stub class to be instantiated.
Packit 1b8c31
# As such, a filter specifies a list of IDL stub classes that will be
Packit 1b8c31
# allowed by an ORB when an ORB::string_to_object is invoked.
Packit 1b8c31
# It is used to specify a white list configuration of acceptable
Packit 1b8c31
# IDL stub types which may be contained in a stringified IOR
Packit 1b8c31
# parameter passed as input to an ORB::string_to_object method.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
#com.sun.CORBA.ORBIorTypeCheckRegistryFilter=binary_class_name;binary_class_name
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# JCEKS Encrypted Key Serial Filter
Packit 1b8c31
#
Packit 1b8c31
# This filter, if configured, is used by the JCEKS KeyStore during the
Packit 1b8c31
# deserialization of the encrypted Key object stored inside a key entry.
Packit 1b8c31
# If not configured or the filter result is UNDECIDED (i.e. none of the patterns
Packit 1b8c31
# matches), the filter configured by jdk.serialFilter will be consulted.
Packit 1b8c31
#
Packit 1b8c31
# If the system property jceks.key.serialFilter is also specified, it supersedes
Packit 1b8c31
# the security property value defined here.
Packit 1b8c31
#
Packit 1b8c31
# The filter pattern uses the same format as jdk.serialFilter. The default
Packit 1b8c31
# pattern allows java.lang.Enum, java.security.KeyRep, java.security.KeyRep$Type,
Packit 1b8c31
# and javax.crypto.spec.SecretKeySpec and rejects all the others.
Packit 1b8c31
jceks.key.serialFilter = java.lang.Enum;java.security.KeyRep;\
Packit 1b8c31
  java.security.KeyRep$Type;javax.crypto.spec.SecretKeySpec;!*
Packit 1b8c31
Packit 1b8c31
# The iteration count used for password-based encryption (PBE) in JCEKS
Packit 1b8c31
# keystores. Values in the range 10000 to 5000000 are considered valid.
Packit 1b8c31
# If the value is out of this range, or is not a number, or is unspecified;
Packit 1b8c31
# a default of 200000 is used.
Packit 1b8c31
#
Packit 1b8c31
# If the system property jdk.jceks.iterationCount is also specified, it
Packit 1b8c31
# supersedes the security property value defined here.
Packit 1b8c31
#
Packit 1b8c31
#jdk.jceks.iterationCount = 200000
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Disabled mechanisms for the Simple Authentication and Security Layer (SASL)
Packit 1b8c31
#
Packit 1b8c31
# Disabled mechanisms will not be negotiated by both SASL clients and servers.
Packit 1b8c31
# These mechanisms will be ignored if they are specified in the "mechanisms"
Packit 1b8c31
# argument of "Sasl.createSaslClient" or the "mechanism" argument of
Packit 1b8c31
# "Sasl.createSaslServer".
Packit 1b8c31
#
Packit 1b8c31
# The value of this property is a comma-separated list of SASL mechanisms.
Packit 1b8c31
# The mechanisms are case-sensitive. Whitespaces around the commas are ignored.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be examined and used by other implementations.
Packit 1b8c31
#
Packit 1b8c31
# Example:
Packit 1b8c31
#   jdk.sasl.disabledMechanisms=PLAIN, CRAM-MD5, DIGEST-MD5
Packit 1b8c31
jdk.sasl.disabledMechanisms=
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Policies for distrusting Certificate Authorities (CAs).
Packit 1b8c31
#
Packit 1b8c31
# This is a comma separated value of one or more case-sensitive strings, each
Packit 1b8c31
# of which represents a policy for determining if a CA should be distrusted.
Packit 1b8c31
# The supported values are:
Packit 1b8c31
#
Packit 1b8c31
#
Packit 1b8c31
#   SYMANTEC_TLS : Distrust TLS Server certificates anchored by a Symantec
Packit 1b8c31
#   root CA and issued after April 16, 2019 unless issued by one of the
Packit 1b8c31
#   following subordinate CAs which have a later distrust date:
Packit 1b8c31
#     1. Apple IST CA 2 - G1, SHA-256 fingerprint:
Packit 1b8c31
#        AC2B922ECFD5E01711772FEA8ED372DE9D1E2245FCE3F57A9CDBEC77296A424B
Packit 1b8c31
#        Distrust after December 31, 2019.
Packit 1b8c31
#     2. Apple IST CA 8 - G1, SHA-256 fingerprint:
Packit 1b8c31
#        A4FE7C7F15155F3F0AEF7AAA83CF6E06DEB97CA3F909DF920AC1490882D488ED
Packit 1b8c31
#        Distrust after December 31, 2019.
Packit 1b8c31
# Leading and trailing whitespace surrounding each value are ignored.
Packit 1b8c31
# Unknown values are ignored. If the property is commented out or set to the
Packit 1b8c31
# empty String, no policies are enforced.
Packit 1b8c31
#
Packit 1b8c31
# Note: This property is currently used by the JDK Reference implementation.
Packit 1b8c31
# It is not guaranteed to be supported by other SE implementations. Also, this
Packit 1b8c31
# property does not override other security properties which can restrict
Packit 1b8c31
# certificates such as jdk.tls.disabledAlgorithms or
Packit 1b8c31
# jdk.certpath.disabledAlgorithms; those restrictions are still enforced even
Packit 1b8c31
# if this property is not enabled.
Packit 1b8c31
#
Packit 1b8c31
jdk.security.caDistrustPolicies=SYMANTEC_TLS
Packit 1b8c31
Packit 1b8c31
#
Packit 1b8c31
# Policies for the proxy_impersonator Kerberos ccache configuration entry
Packit 1b8c31
#
Packit 1b8c31
# The proxy_impersonator ccache configuration entry indicates that the ccache
Packit 1b8c31
# is a synthetic delegated credential for use with S4U2Proxy by an intermediate
Packit 1b8c31
# server. The ccache file should also contain the TGT of this server and
Packit 1b8c31
# an evidence ticket from the default principal of the ccache to this server.
Packit 1b8c31
#
Packit 1b8c31
# This security property determines how Java uses this configuration entry.
Packit 1b8c31
# There are 3 possible values:
Packit 1b8c31
#
Packit 1b8c31
#  no-impersonate     - Ignore this configuration entry, and always act as
Packit 1b8c31
#                       the owner of the TGT (if it exists).
Packit 1b8c31
#
Packit 1b8c31
#  try-impersonate    - Try impersonation when this configuration entry exists.
Packit 1b8c31
#                       If no matching TGT or evidence ticket is found,
Packit 1b8c31
#                       fallback to no-impersonate.
Packit 1b8c31
#
Packit 1b8c31
#  always-impersonate - Always impersonate when this configuration entry exists.
Packit 1b8c31
#                       If no matching TGT or evidence ticket is found,
Packit 1b8c31
#                       no initial credential is read from the ccache.
Packit 1b8c31
#
Packit 1b8c31
# The default value is "always-impersonate".
Packit 1b8c31
#
Packit 1b8c31
# If a system property of the same name is also specified, it supersedes the
Packit 1b8c31
# security property value defined here.
Packit 1b8c31
#
Packit 1b8c31
#jdk.security.krb5.default.initiate.credential=always-impersonate