X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FAuthorizationService.java;h=7a0816a9713d2cbb97637bc5a3aef99a1bb79726;hb=a0ce32a7a71799300bbf300cf71e76e1782392d3;hp=6bb5db27308af2e655ba06ed272fd40a4d0de1d7;hpb=5ea8f0e2af53562c1507e8fb5a3ede2af5c5de6c;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationService.java b/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationService.java index 6bb5db27..7a0816a9 100644 --- a/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationService.java +++ b/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationService.java @@ -15,14 +15,15 @@ */ package org.wamblee.security.authorization; -import org.wamblee.persistence.Persistent; +import org.wamblee.usermgt.UserAccessor; /** * Service to determine if access to a certain resource is allowed. * * @author Erik Brakkee */ -public interface AuthorizationService extends Persistent { +public interface AuthorizationService { + /** * Checks whether an operation is allowed on a resource. * @@ -35,6 +36,14 @@ public interface AuthorizationService extends Persistent { */ boolean isAllowed(Object aResource, Operation aOperation); + /** + * Checks if the given operation is allowed on the resource. + * @param Type of resource + * @param aResource Resource. + * @param aOperation Operation. + * @return Resource passed in in case access is allowed + * @throws AuthorizationException In case access is denied. + */ T check(T aResource, Operation aOperation); /** @@ -69,4 +78,14 @@ public interface AuthorizationService extends Persistent { * Rule to insert. */ void insertRuleAfter(int aIndex, AuthorizationRule aRule); -} + + /** + * Sets the user accessor so that the authorization service can get access + * to the logged in user. + * + * @param aUserAccessor + * User accessor. + */ + void setUserAccessor(UserAccessor aUserAccessor); + +} \ No newline at end of file