Red de conocimiento informático - Material del sitio web - En shiro, ¿cuáles son los atributos del director?

En shiro, ¿cuáles son los atributos del director?

Principal es un objeto, es decir, un objeto de entidad con un atributo de nombre de usuario

Los detalles son los siguientes:

En el método de inicio de sesión, llame al asunto. login (token), también debe usar manualmente el principal y el domainName para construir el objeto SimpleAuthenticationInfo. De hecho, el principal aquí es un objeto, es decir, un objeto de entidad con un atributo de nombre de usuario, y luego el objeto SimpleAuthenticationInfo se almacenará en el. sesión.

El código es el siguiente: try?{ sujeto.login(token); //Obtener el objeto kingdomSecurityManager, que contiene mucha información, como datos en el archivo de configuración RealmSecurityManager?=? (RealmSecurityManager)?securityManager; Collectionlt;Realmgt;?collection?=?realmSecurityManager.getRealms();if?(colección! null?amp;amp;?collection.size()gt;0){ Iterador?iterador?=?colección .iterator();? while(iterator.hasNext()){Realm?realm?=?(Realm)iterator.next();? //Obtiene el nombre de la fuente de datos predeterminada, aunque el nombre predeterminado es iniRealm, String?realmName. ?= también se puede obtener mediante programación. ?realm.getName(); //Objeto de entidad personalizado User?user?=?new?User(); user.setUsername(username); object SimpleAuthenticationInfo?info?=? new?SimpleAuthenticationInfo(usuario, contraseña, domainName); //analice a través del código fuente después de llamar a sujeto.login(token), se guardará en la sesión a través de SubjectContext, por lo que se reutilizará directamente. código fuente (clase DefaultSecurityManager) SubjectContext ?subjectContext?=?new?DefaultSubjectContext(); sujetoContext.setAuthenticated(true); sujetoContext.setAuthenticationToken(token); sujetoContext.setAuthenticationInfo(info); .setSubject(subject);

}//El guardado se completa en este método

realmSecurityManager.createSubject(subjectContext);

}

}

}catch(UnknownAccountException?e){

error?=?""El nombre de usuario no existe";

}

error?=?"? El nombre de usuario no existe";

}catch?(IncorrectCredentialsException?e){

error?=?" Uso

Nombre de usuario o contraseña incorrectos";

}catch?(AuthenticationException?e){

error?=?"Otros errores" e.getMessage();

}

El resultado final es que la etiqueta