Hay que modificar o añadir las siguientes carpetas y ficheros. Los cambios indicados concretos son los específicos para la aplicación INTERCAMBIO.
<QUERY ID="ObtieneCorreoDniBD"> <SQL> SELECT email FROM umdp.usuarios_intercambio WHERE dni = ? UNION SELECT email FROM intercambio.usuarios_extra WHERE dni = ? </SQL> </QUERY> |
private final String SSOAuthenticationMethods[] = {
"SSO_CORREO( \"LdapAuthenticationHandler\", \"\", \"label.authentication.type.correoum\" )",
"SSO_CLAVE( \"DelegatedClientAuthenticationHandler\", \"Cl@ve\", \"label.authentication.type.clave\" )",
"SSO_CERT( \"DelegatedClientAuthenticationHandler\", \"Cert\", \"label.authentication.type.cert\" )",
"SSO_CMN( \"DelegatedClientAuthenticationHandler\", \"CMN\", \"label.authentication.type.cmn\" )"
};
private static final String CLIENT_NAME_KEY = "clientName";
private static final String AUTHENTICATION_METHOD_NAME_KEY = "authenticationMethod";
private static final String CLAVE_CLIENT_NAME = "Cl@ve";
private static final String CERT_CLIENT_NAME = "Cert";
private static final String FIRST_NAME_KEY = "FirstName";
private static final String FAMILY_NAME_KEY = "FamilyName";
public void setupCasUser( javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res,
javax.servlet.http.HttpSession session ) {
setCasUser( req.getRemoteUser() );
setReq( req );
}
public void setCasUser( String dniOrCorreo ) {
if ( ( dniOrCorreo != null ) && ( !dniOrCorreo.equals( "" ) ) ) {
if ( isValidEmailAddress( dniOrCorreo ) ) {
correo = dniOrCorreo;
} else {
dni = dniOrCorreo;
}
}
}
public boolean isValidEmailAddress( String email ) {
final String ePattern = "^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$";
final java.util.regex.Pattern p = java.util.regex.Pattern.compile( ePattern );
final java.util.regex.Matcher m = p.matcher( email );
return m.matches();
} |