X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FAuthorizationRule.java;h=709591df65f9abcd244b4e7fb2f031fc0c4147ed;hb=1b9acefff0078d6d2a3f061948b36f6721743306;hp=4e0f5641fe43b21b2f758421419b6aa78ba35926;hpb=1d8237e4961e8653727f1210061b832ac82dda88;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationRule.java b/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationRule.java index 4e0f5641..709591df 100644 --- a/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationRule.java +++ b/security/impl/src/main/java/org/wamblee/security/authorization/AuthorizationRule.java @@ -12,22 +12,11 @@ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - */ + */ package org.wamblee.security.authorization; -import javax.persistence.DiscriminatorColumn; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Inheritance; -import javax.persistence.InheritanceType; -import javax.persistence.Table; -import javax.persistence.Version; - -import org.wamblee.persistence.Persistent; - -import org.wamblee.usermgt.User; +import org.wamblee.security.authentication.User; +import org.wamblee.security.authentication.UserAdministration; /** * Represents an authorization rule to determine whether an operation is allowed @@ -35,35 +24,21 @@ import org.wamblee.usermgt.User; * * @author Erik Brakkee */ -@Entity -@Table(name = "SEC_AUTH_RULE") -@Inheritance(strategy = InheritanceType.SINGLE_TABLE) -@DiscriminatorColumn(name = "TYPE") -public abstract class AuthorizationRule { +public interface AuthorizationRule { - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - private Long primaryKey; + /** + * Sets the user admnistration to use. + * @param aAdmin User administration. + */ + void setUserAdministration(UserAdministration aAdmin); - @Version - private int version; - - public AuthorizationRule() { - // Empty - } - - public AuthorizationRule(AuthorizationRule aRule) { - primaryKey = aRule.primaryKey; - version = aRule.version; - } - /** * Returns the supported object types for which this authorization rule * applies. This can be used by the authorization service for optimization. * * @return Array of supported types. */ - public abstract Class[] getSupportedTypes(); + Class[] getSupportedTypes(); /** * Determines whether an operation is allowed on a certain resource. The @@ -80,6 +55,7 @@ public abstract class AuthorizationRule { * * @return Authorization result. */ - public abstract AuthorizationResult isAllowed(Object aResource, Operation aOperation, - User aUser); -} + AuthorizationResult isAllowed(Object aResource, + Operation aOperation, String aUser); + +} \ No newline at end of file