fi.hut.tcm.policy
Class SPKIPolicy

java.lang.Object
  |
  +--java.security.Policy
        |
        +--fi.hut.tcm.policy.SPKIPolicy

public class SPKIPolicy
extends java.security.Policy

SPKIPolicy The SPKIPolicy uses SPKICertificates to express and manage the security policy.


Field Summary
private  boolean debug
           
private  java.security.Permissions defaultPerm
          The default permissions are equal to the SandBox.
private  boolean initialized
          Indicates whether the policy object has been initialized or not.
private static java.lang.Class[] PARAMS
          private static final Class[] PARAMS = { String.class, String.class};
private  java.security.PublicKey self
          The Self key is the public key of the Verifier, i.e. this Policy object.
private  Issuer selfIssuer
           
private  SPKICertificateRepository storage
          The CertificateRepository object used by this Policy to retrieve certificates.
 
Fields inherited from class java.security.Policy
policy
 
Constructor Summary
SPKIPolicy()
          Creates a SPKIPolicy object.
 
Method Summary
 boolean checkPermission(java.security.Permission perm, java.security.CodeSource cs)
           
private static java.security.Permission getPermInstance(java.lang.String type, java.lang.String target, java.lang.String action)
          final
 java.security.PermissionCollection getPermissions(java.security.CodeSource codesource)
          Evaluates the policy object with the specified CodeSource, and creates a Permissions object with the set of permissions for that principal's protection domain.
private  void initialize()
          Initializes the policy object by fetching the Self key into memory, finding the certificate repository and creating the default policy.
 void refresh()
          Refreshes the given policy object.
private  boolean resolvePerms(SPKICertificate spkic, java.security.Permission perm)
           
private  java.security.Permission tagToPermission(Tag tag)
          Interprets the Tag into a Java Permission object.
 
Methods inherited from class java.security.Policy
getPolicy, getPolicyNoCheck, isSet, setPolicy
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

debug

private boolean debug

self

private java.security.PublicKey self
The Self key is the public key of the Verifier, i.e. this Policy object.

storage

private SPKICertificateRepository storage
The CertificateRepository object used by this Policy to retrieve certificates.

defaultPerm

private java.security.Permissions defaultPerm
The default permissions are equal to the SandBox.

initialized

private boolean initialized
Indicates whether the policy object has been initialized or not.

PARAMS

private static java.lang.Class[] PARAMS
private static final Class[] PARAMS = { String.class, String.class};

selfIssuer

private Issuer selfIssuer
Constructor Detail

SPKIPolicy

public SPKIPolicy()
Creates a SPKIPolicy object.
Method Detail

initialize

private void initialize()
Initializes the policy object by fetching the Self key into memory, finding the certificate repository and creating the default policy.

refresh

public void refresh()
Refreshes the given policy object.
Overrides:
refresh in class java.security.Policy

getPermissions

public java.security.PermissionCollection getPermissions(java.security.CodeSource codesource)
Evaluates the policy object with the specified CodeSource, and creates a Permissions object with the set of permissions for that principal's protection domain.
Overrides:
getPermissions in class java.security.Policy

checkPermission

public boolean checkPermission(java.security.Permission perm,
                               java.security.CodeSource cs)

resolvePerms

private boolean resolvePerms(SPKICertificate spkic,
                             java.security.Permission perm)

tagToPermission

private java.security.Permission tagToPermission(Tag tag)
Interprets the Tag into a Java Permission object.

getPermInstance

private static final java.security.Permission getPermInstance(java.lang.String type,
                                                              java.lang.String target,
                                                              java.lang.String action)
                                                       throws java.lang.ClassNotFoundException,
                                                              java.lang.InstantiationException,
                                                              java.lang.IllegalAccessException,
                                                              java.lang.NoSuchMethodException,
                                                              java.lang.reflect.InvocationTargetException
final