The sasl-3.2 specification states:
Servers MUST allow a client, authenticated or otherwise, to reauthenticate by sending a new AUTHENTICATE message at any time.
Servers MAY disconnect ANY client at any time as a result of failed authentication, including both unregistered and registered clients, but MUST provide the reason for the authentication failure prior to disconnection.
This works for most uses but causes problems for implementations where your account defines your access to the server and it is undesirable to allow people to log out (e.g. in a corporate environment).
My proposed solution is to change the verb in the first section above from "MUST" to "SHOULD" and to restore the requirement to send ERR_SASLALREADY if reauthentication is not available.
cc: @rburchell
The sasl-3.2 specification states:
This works for most uses but causes problems for implementations where your account defines your access to the server and it is undesirable to allow people to log out (e.g. in a corporate environment).
My proposed solution is to change the verb in the first section above from "MUST" to "SHOULD" and to restore the requirement to send ERR_SASLALREADY if reauthentication is not available.
cc: @rburchell