You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shiro.apache.org by "Les Hazlewood (JIRA)" <ji...@apache.org> on 2011/06/27 01:23:48 UTC
[jira] [Issue Comment Edited] (SHIRO-266) Login/Logout: Enable
pluggable Subject state binding
[ https://issues.apache.org/jira/browse/SHIRO-266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13055230#comment-13055230 ]
Les Hazlewood edited comment on SHIRO-266 at 6/26/11 11:23 PM:
---------------------------------------------------------------
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-Subject 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.
was (Author: lhazlewood):
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