ottoka commented on a change in pull request #750:
URL: https://github.com/apache/james-project/pull/750#discussion_r754048931



##########
File path: 
server/apps/distributed-app/docs/modules/ROOT/pages/configure/ssl.adoc
##########
@@ -84,6 +84,32 @@ Please note `JKS` keystore format is also supported (default 
value if no keystor
 </tls>
 ....
 
+
+=== Client authentication via certificates
+
+When you enable TLS, you may also configure the server to request a client 
certificate for authentication:
+
+....
+<tls socketTLS="false" startTLS="true">
+  <keystore>file://conf/keystore</keystore>
+  <keystoreType>JKS</keystoreType>
+  <secret>yoursecret</secret>
+
+  <clientAuth required="true">
+    <truststore>file://conf/truststore</truststore>
+    <truststoreType>JKS</truststoreType>
+    <truststoreSecret>yoursecret</truststoreSecret>
+  </clientAuth>
+</tls>
+....
+
+With `required="true"`, the server refuses any client connections that do not 
include a client certificate.
+
+With `required="false"`, the servers requests an optional client certificate, 
but also accepts connections without one.

Review comment:
       It is one of the options you have in the TLS handshake protocol. The 
idea is that servers could allow different levels of access whether they 
decided to authenticate or not.
   Right now this does not make much sense in James. But someone could 
implement a way to access the client certificate (if any) from the protocol 
session, e.g. to implement SASL EXTERNAL authentication mode. Or even from 
mailets to do whatever.
   Now that I think about it, it is probably easier to just remove the option 
for now; if someone needs it later they can easily add it again.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to