You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shiro.apache.org by "Brian Demers (JIRA)" <ji...@apache.org> on 2010/01/27 16:58:34 UTC
[jira] Updated: (SHIRO-59) Refactor Realm implementations to favor
delegation over inheritance
[ https://issues.apache.org/jira/browse/SHIRO-59?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brian Demers updated SHIRO-59:
------------------------------
Attachment: SHIRO-59.diff
My other thought was to add a new method to the PermissionResolver interface, but that seems like mixing apples and oranges.
{code}
/**
* Resolves a Collection of Permissions based on the given String representation.
*
* @param roleString the String representation of a role name to resolve.
* @return
*/
Collection<Permission> resolvePermissionsInRole(String roleString);
{code}
> Refactor Realm implementations to favor delegation over inheritance
> -------------------------------------------------------------------
>
> Key: SHIRO-59
> URL: https://issues.apache.org/jira/browse/SHIRO-59
> Project: Shiro
> Issue Type: Improvement
> Reporter: Les Hazlewood
> Attachments: SHIRO-59.diff
>
>
> Currently most people need to subclass Realm implementations to perform role and/or permission checks. This is not very scalable when more than a few realms exist, or people need to re-use realms across applications.
> Instead, it would be much nicer to allow developers to configure components that did most of the common Realm logic, regardless of data store. For example, perhaps a RolePermissionResolver could be introduced:
> rolePermissionResolver.getPermissions( String roleName );
> This could be injected across multiple realms across applications instead of needing to subclass Realm implementations - a little nicer approach. Also, we might want to look at uses of the Strategy design pattern for checking logic.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.