In the case of Web Applications, the GamExampleLogin object (which is part of the GAM - Examples) allows the user to log in using Local Authentication, and all the other Authentication Types which have been defined in the Repository.
Take a look at the code below. In that case, it loads in a grid all the authentication types existing in the GAM Repository, and it displays the selection of each one using the Small Image associated with the Authentication Type.
The code associated with the selection of each one of the Authentication Types is as follows:
&AdditionalParameter.AuthenticationTypeName = &NameAuthType
&LoginOK = GAMRepository.Login(&UserName, &UserPassword, &AdditionalParameter, &Errors )
In the GAM Repository, you can define as many equal Authentication Types as you want. They are identified by their name when you execute the Login method; for example, if you have more than one GAMRemote Authentication, each one is identified by their name, so they are all included in the list of Authentication Types available for the user to log in.