org.mmbase.security.implementation.context
Class ContextAuthorization

Package class diagram package ContextAuthorization
java.lang.Object
  extended by org.mmbase.security.Configurable
      extended by org.mmbase.security.Authorization
          extended by org.mmbase.security.implementation.context.ContextAuthorization

public class ContextAuthorization
extends Authorization

Authorization based on a XML-configuration file. The XML file contains users, groups and contexts. Contextes provide rights to users and/or groups and are identified by a string (which is stored in the owner field).

Version:
$Id: ContextAuthorization.java 45315 2011-02-18 20:23:11Z michiel $
Author:
Eduard Witteveen, Pierre van Rooden, Michiel Meeuwissen
See Also:
ContextAuthentication

Nested Class Summary
protected static class ContextAuthorization.AllowingContexts
           
 
Nested classes/interfaces inherited from class org.mmbase.security.Authorization
Authorization.QueryCheck
 
Field Summary
protected  Cache<String,ContextAuthorization.AllowingContexts> allowingContextsCache
           
 
Fields inherited from class org.mmbase.security.Authorization
COMPLETE_CHECK, NO_CHECK
 
Fields inherited from class org.mmbase.security.Configurable
configResource, configWatcher, manager
 
Constructor Summary
ContextAuthorization()
           
 
Method Summary
 boolean check(UserContext user, int nodeNumber, int srcNodeNumber, int dstNodeNumber, Operation operation)
           
 boolean check(UserContext user, int nodeNumber, Operation operation)
           
 Authorization.QueryCheck check(UserContext userContext, Query query, Operation operation)
           
 void create(UserContext user, int nodeNumber)
           
protected  SortedSet<String> getAllContexts()
           
protected  String getContext(int nodeNumber)
           
 String getContext(UserContext user, int nodeNumber)
           
 String getDefaultContext(UserContext user)
           
protected  SortedSet<String> getDisallowingContexts(UserContext user, Operation operation)
           
 Set<String> getPossibleContexts(UserContext user, int nodeNumber)
           
protected  void load()
           
 void remove(UserContext user, int nodeNumber)
           
 void setContext(UserContext user, int nodeNumber, String context)
           
 void update(UserContext user, int nodeNumber)
           
 void verify(UserContext user, int nodeNumber, int srcNodeNumber, int dstNodeNumber, Operation operation)
           
 void verify(UserContext user, int nodeNumber, Operation operation)
           
 
Methods inherited from class org.mmbase.security.Authorization
check, getPossibleContexts, verify
 
Methods inherited from class org.mmbase.security.Configurable
load
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

allowingContextsCache

protected Cache<String,ContextAuthorization.AllowingContexts> allowingContextsCache
Constructor Detail

ContextAuthorization

public ContextAuthorization()
Method Detail

load

protected void load()
Specified by:
load in class Configurable

getDefaultContext

public String getDefaultContext(UserContext user)
                         throws SecurityException
Throws:
SecurityException

create

public void create(UserContext user,
                   int nodeNumber)
            throws SecurityException
Specified by:
create in class Authorization
Throws:
SecurityException

update

public void update(UserContext user,
                   int nodeNumber)
            throws SecurityException
Specified by:
update in class Authorization
Throws:
SecurityException

remove

public void remove(UserContext user,
                   int nodeNumber)
            throws SecurityException
Specified by:
remove in class Authorization
Throws:
SecurityException

setContext

public void setContext(UserContext user,
                       int nodeNumber,
                       String context)
                throws SecurityException
Specified by:
setContext in class Authorization
Throws:
SecurityException

getContext

public String getContext(UserContext user,
                         int nodeNumber)
                  throws SecurityException
Specified by:
getContext in class Authorization
Throws:
SecurityException

getPossibleContexts

public Set<String> getPossibleContexts(UserContext user,
                                       int nodeNumber)
                                throws SecurityException
Specified by:
getPossibleContexts in class Authorization
Throws:
SecurityException

getContext

protected String getContext(int nodeNumber)
Since:
MMBase-1.9

check

public boolean check(UserContext user,
                     int nodeNumber,
                     Operation operation)
              throws SecurityException
Specified by:
check in class Authorization
Throws:
SecurityException

verify

public void verify(UserContext user,
                   int nodeNumber,
                   Operation operation)
            throws SecurityException
Overrides:
verify in class Authorization
Throws:
SecurityException

check

public boolean check(UserContext user,
                     int nodeNumber,
                     int srcNodeNumber,
                     int dstNodeNumber,
                     Operation operation)
              throws SecurityException
Specified by:
check in class Authorization
Throws:
SecurityException

verify

public void verify(UserContext user,
                   int nodeNumber,
                   int srcNodeNumber,
                   int dstNodeNumber,
                   Operation operation)
            throws SecurityException
Overrides:
verify in class Authorization
Throws:
SecurityException

getAllContexts

protected SortedSet<String> getAllContexts()

getDisallowingContexts

protected SortedSet<String> getDisallowingContexts(UserContext user,
                                                   Operation operation)

check

public Authorization.QueryCheck check(UserContext userContext,
                                      Query query,
                                      Operation operation)
Overrides:
check in class Authorization


MMBase2 Core 2.0-SNAPSHOT - 2013-03-30T06:36