[ 
https://issues.apache.org/jira/browse/CAUSEWAY-3618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Keir Haywood resolved CAUSEWAY-3618.
-------------------------------------------
    Resolution: Fixed

> Secman should copy the user's roles into the UserMemento (as obtained via 
> UserService).
> ---------------------------------------------------------------------------------------
>
>                 Key: CAUSEWAY-3618
>                 URL: https://issues.apache.org/jira/browse/CAUSEWAY-3618
>             Project: Causeway
>          Issue Type: Improvement
>          Components: Ext Sec Secman
>    Affects Versions: 2.0.0-RC2
>            Reporter: Daniel Keir Haywood
>            Assignee: Daniel Keir Haywood
>            Priority: Minor
>             Fix For: 2.0.0-RC3
>
>
> The `UserService#getUser()` returns a `UserMemento`, which is a 
> representation of the current user's roles and context (locale, time, 
> timezone etc).  This is independent of security mechanism configured.
> The `UserMemento.AUTHORIZED_USER_ROLE` (String constant) is used by the 
> Wicket viewer as a required role for protected pages ; it's the 
> responsibility of the security mechanism to add this role during login.  If 
> Spring is used for authentication, then this is done within 
> `SpringSecurityFilter`.  Thus, when querying `UserService#getUser()` with 
> Spring, the only role we see on `UserMemento` is this one.
> The UserMementoRefiner SPI allows security mechanisms to fine-tune this 
> `UserMemento`.  Secman already has an implementation of this 
> (`UserMementoRefinerFromApplicationUser`), which adjusts the timezone etc, 
> but it currently does not yet copy over the secman-defined roles.  It should 
> do this as well.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to