Cómo implementar el inicio de sesión único en Java
El inicio de sesión único, abreviado como "SSO", es una de las soluciones más populares en la integración empresarial empresarial. SSO se define como un sistema en el que los usuarios solo necesitan iniciar sesión una vez para acceder a todas las aplicaciones de confianza mutua en múltiples aplicaciones.
paquete?DesktopSSO;
importar?java.io.*
importar?java.net.*
importar?java.text.*; /p>
importar?java.util.*;
¿importar?
importar?java.util.concurrent.*
importar?javax .servlet.*;
importar?javax.servlet.http.*;
¿público?clase?SSOAuth?extiende?HttpServlet?{
estático?privado ?ConcurrentMap?cuentas;
estático?privado?ConcurrentMap?SSOID;
Cadena?cookiename="WangYuDesktopSSOID";
Cadena?nombre de dominio;
public?void?init(ServletConfig?config)?throws?getInitParameter("domainname");
cookiename=?config.getInitParameter("cookiename");
SSOID =?new?ConcurrentHashMap();
accounts=new?ConcurrentHashMap();
accounts.put("wangyu", ?" wangyu");
cuentas.put("pablo", ?" pablo");
cuentas.put("carol", ?" carol");
}
protected?void?processRequest(HttpServletRequest?request,?HttpServletResponse?response)?throws?ServletException,?IOException? {
PrintWriter?out?=?response.getWriter();
String?action?=?request.getParameter("action") )
String?result="failed";
if?(action==null)?{ p>
handlerFromLogin(solicitud, respuesta);
} más?(action.equals("authcookie")){
String?myCookie?=?request. getParameter("cookiename");
if?(myCookie! =?null)?result?=?authCookie(myCookie);
out.print(resultado);
out.close();
}?{
result=authNameAndPasswd(solicitud, respuesta
);
out.print(resultado);
out.close();
} más?{
Cadena?myCookie ?=?request.getParameter("nombredecookie");
logout(myCookie);
out.close();
}
}
}
.....
}