Figure 5.11 shows the simplest possible authentication chain example. It contains one authentication block, which contains one method definition.
When the server starts the user authentication exchange with the client, it enters the authentication block marked with
1, gathers the list of methods defined in it and sends that list to the client to inform it of the acceptable authentication methods. In this example, only one method is allowed.
Whenever the user passes any one of the methods, it is considered to have satisfied the authentication block. After that, the server either proceeds to a nested authentication block, or if there are no further blocks to enter, marks the user as authenticated. Once the server has entered an authentication block, it will never exit it – the processing continues only inside the block.