[ 
https://issues.apache.org/jira/browse/SHIRO-266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13055230#comment-13055230
 ] 

Les Hazlewood commented on SHIRO-266:
-------------------------------------

Initial implementation complete.  Introduced new concepts (all in the 
org.apache.shiro.mgt package):

- SubjectDAO interface and default DefaultSubjectDAO implementation.  
- The DefaultSubjectDAO implementation uses a SessionStateEvaluator (an 
interface) that allows control of session usage on a per-subject basis.  
- The DefaultSessionStateEvaluator allows session control for all Subjects at a 
global level.

Custom per-session logic may be performed by end-users implementing the 
SessionStateEvaluator interface and configuring it on the DefaultSubjectDAO.  
No subclassing of an existing Shiro implementation required.

- The DefaultSubjectDAO implementation uses efficient 'merge' logic for 
persisting data to the session - a session is only ever updated if there is a 
difference in subject state.

> Login/Logout: Enable pluggable Subject state binding
> ----------------------------------------------------
>
>                 Key: SHIRO-266
>                 URL: https://issues.apache.org/jira/browse/SHIRO-266
>             Project: Shiro
>          Issue Type: Improvement
>          Components: Session Management, Subject
>    Affects Versions: 1.0.0, 1.1.0, 1.1.1
>            Reporter: Les Hazlewood
>            Assignee: Les Hazlewood
>             Fix For: 1.2.0
>
>
> After login, a subject's state (principals, authentication state, etc) are 
> bound to the Subject's session.  This allows Shiro to reconstruct the Subject 
> instance later on by acquiring a Session (e.g. by id) and reconstructing the 
> Subject based on the Session's state.
> In stateless environments (e.g. some REST-enabled applications), it is not 
> desirable to create a session.  There should be a pluggable component that 
> performs state binding and unbinding for subject login and logout, 
> respectively.  Stateless applications can choose to configure Shiro with a 
> stateless binder if they don't want sessions to be created.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to