[#OPENDJ-649] Add supportedTLSCiphers and

advertisement
[OPENDJ-649] Add supportedTLSCiphers and supportedTLSProtocols to
RootDSE and system monitor Created: 19/Nov/12 Updated: 14/Feb/13 Resolved: 21/Nov/12
Status:
Project:
Component/s:
Affects
Version/s:
Fix Version/s:
Resolved
OpenDJ
core server
2.4.6
Type:
Reporter:
Resolution:
Labels:
Σ Remaining
Estimate:
Σ Time Spent:
Σ Original
Estimate:
Bug
Matthew Swift
Fixed
release-notes
Not Specified
Sub-Tasks:
Key
OPENDJ-650
2.6.0
Not Specified
Not Specified
Priority:
Assignee:
Votes:
Major
Matthew Swift
0
Remaining
Estimate:
Time Spent:
Original
Estimate:
Not Specified
Summary
Type
Update root DSE Sub-task
example in dev
guide
Not Specified
Not Specified
Status
Resolved
Assignee
Mark
Description
Sample code:
SSLContext context = SSLContext.getDefault();
System.out.println(Arrays.toString(context.getSupportedSSLParameters().getProtocols()));
System.out.println(Arrays.toString(context.getSupportedSSLParameters().getCipherSuites()))
This will help people debug some SSL interop issues.
Comments
Comment by Matthew Swift [ 20/Nov/12 ]
We have agreed that the RootDSE should expose the following attributes:

supportedTLSProtocols - the set of TLS protocols supported by the LDAP connection
handler to which the client is connected

supportedTLSCiphers - the set of TLS ciphers supported by the LDAP connection handler to
which the client is connected
In other words, the content of these attributes may vary depending on the LDAP connection handler
configuration. In addition, we should expose the full set of protocols/ciphers supported by the JVM
in the system monitor entry.
Comment by Matthew Swift [ 21/Nov/12 ]
Made the following changes:

add supportedTLSCiphers (note plural) attribute to the RootDSE. This lists the ciphers
which have been enabled for the connection handler to which the client is connected. For
plain LDAP listeners which do not support StartTLS this attribute is empty

add supportedTLSProtocols (note plural) attribute to the RootDSE. This lists the TLS
protocols which have been enabled for the connection handler to which the client is
connected. For plain LDAP listeners which do not support StartTLS this attribute is empty

added supportedTLSProtocols and supportedTLSCiphers attributes to the System Monitor
monitor entry. These attributes lists the TLS protocols and ciphers which are supported by
the JVM and which may not necessarily be enabled for individual connection handlers. Note
that the default set of protocols and ciphers may be a subset of the supported set, and usually
is for ciphers

fixed the LDAP connection handler to provide a more useful error message in the access log
when SSL errors occur, especially during handshaking. A previous change (see ) was too
aggressive at filtering out "noisy" exceptions

fix the LDAP connection handler so that it validates the SSL configuration during
initialization and configuration changes. Previously it was lazily configuring SSL when the
first connection is accepted, meaning that any configuration errors were not detected early
(or at all in fact)

various changes required in order to handle the fact that we now configure SSL early. In
particular the administration connector initialization needed some brain surgery because it
was being initialized before the required key and trust managers.
Comment by Matthew Swift [ 27/Nov/12 ]
Useful JSSE/JCE reading for documentation.
http://docs.oracle.com/javase/7/docs/technotes/guides/security/SunProviders.html#SunJSSEProvider
Generated at Tue Feb 09 11:33:08 GMT 2016 using JIRA 6.3.9#6339sha1:46fa26140bf81c66e10e6f784903d4bfb1a521ae.
Download