com.netscape.cms.policy.extensions
Class PolicyConstraintsExt

java.lang.Object
  extended by com.netscape.cms.policy.APolicyRule
      extended by com.netscape.cms.policy.extensions.PolicyConstraintsExt
All Implemented Interfaces:
IExtendedPluginInfo, IEnrollmentPolicy, IPolicyRule, IPolicy

public class PolicyConstraintsExt
extends APolicyRule
implements IEnrollmentPolicy, IExtendedPluginInfo

Policy Constraints Extension Policy Adds the policy constraints extension to (CA) certificates. Filtering of CA certificates is done through predicates.

Version:
$Revision: 14561 $, $Date: 2007-05-01 10:28:56 -0700 (Tue, 01 May 2007) $

Field Summary
protected static boolean DEF_CRITICAL
           
protected static int DEF_INHIBIT_POLICY_MAPPING
           
protected static int DEF_REQ_EXPLICIT_POLICY
           
protected  IConfigStore mConfig
           
protected  boolean mCritical
           
protected static java.util.Vector mDefaultParams
           
protected  boolean mEnabled
           
protected  int mInhibitPolicyMapping
           
protected  java.util.Vector mInstanceParams
           
protected  netscape.security.x509.PolicyConstraintsExtension mPolicyConstraintsExtension
           
protected  int mReqExplicitPolicy
           
protected static java.lang.String PROP_CRITICAL
           
protected static java.lang.String PROP_INHIBIT_POLICY_MAPPING
           
protected static java.lang.String PROP_REQ_EXPLICIT_POLICY
           
 
Fields inherited from class com.netscape.cms.policy.APolicyRule
DESC, mFilterExp, mInstanceName, mLogger, NAME
 
Fields inherited from interface com.netscape.certsrv.policy.IPolicyRule
PROP_ENABLE, PROP_IMPLNAME, PROP_PREDICATE
 
Fields inherited from interface com.netscape.certsrv.base.IExtendedPluginInfo
HELP_TEXT, HELP_TOKEN
 
Constructor Summary
PolicyConstraintsExt()
           
 
Method Summary
 PolicyResult apply(IRequest req)
          Adds Policy Constraints Extension to a (CA) certificate.
 PolicyResult applyCert(IRequest req, netscape.security.x509.X509CertInfo certInfo)
           
 java.util.Vector getDefaultParams()
          Return default parameters for a policy implementation.
 java.lang.String[] getExtendedPluginInfo(java.util.Locale locale)
          gets plugin info for pretty console edit displays.
 java.util.Vector getInstanceParams()
          Return configured parameters for a policy rule instance.
 void init(ISubsystem owner, IConfigStore config)
          Initializes this policy rule.
 
Methods inherited from class com.netscape.cms.policy.APolicyRule
agentApproved, createKeyIdentifier, deferred, formSHA1KeyId, formSpkiSHA1KeyId, getDescription, getInstanceName, getName, getPredicate, log, setError, setError, setError, setInstanceName, setPolicyException, setPolicyException, setPredicate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.netscape.certsrv.policy.IPolicyRule
getDescription, getInstanceName, getName, getPredicate, setError, setInstanceName, setPolicyException, setPredicate
 

Field Detail

PROP_CRITICAL

protected static final java.lang.String PROP_CRITICAL
See Also:
Constant Field Values

PROP_REQ_EXPLICIT_POLICY

protected static final java.lang.String PROP_REQ_EXPLICIT_POLICY
See Also:
Constant Field Values

PROP_INHIBIT_POLICY_MAPPING

protected static final java.lang.String PROP_INHIBIT_POLICY_MAPPING
See Also:
Constant Field Values

DEF_CRITICAL

protected static final boolean DEF_CRITICAL
See Also:
Constant Field Values

DEF_REQ_EXPLICIT_POLICY

protected static final int DEF_REQ_EXPLICIT_POLICY
See Also:
Constant Field Values

DEF_INHIBIT_POLICY_MAPPING

protected static final int DEF_INHIBIT_POLICY_MAPPING
See Also:
Constant Field Values

mEnabled

protected boolean mEnabled

mConfig

protected IConfigStore mConfig

mCritical

protected boolean mCritical

mReqExplicitPolicy

protected int mReqExplicitPolicy

mInhibitPolicyMapping

protected int mInhibitPolicyMapping

mPolicyConstraintsExtension

protected netscape.security.x509.PolicyConstraintsExtension mPolicyConstraintsExtension

mInstanceParams

protected java.util.Vector mInstanceParams

mDefaultParams

protected static java.util.Vector mDefaultParams
Constructor Detail

PolicyConstraintsExt

public PolicyConstraintsExt()
Method Detail

init

public void init(ISubsystem owner,
                 IConfigStore config)
          throws EBaseException
Initializes this policy rule.

The entries may be of the form: ca.Policy.rule..predicate=certType==ca ca.Policy.rule..implName= ca.Policy.rule..enable=true

Specified by:
init in interface IPolicyRule
Specified by:
init in class APolicyRule
Parameters:
config - The config store reference
Throws:
EBaseException

apply

public PolicyResult apply(IRequest req)
Adds Policy Constraints Extension to a (CA) certificate. If a Policy constraints Extension is already there, accept it if it's been approved by agent, else replace it.

Specified by:
apply in interface IPolicyRule
Specified by:
apply in interface IPolicy
Specified by:
apply in class APolicyRule
Parameters:
req - The request on which to apply policy.
Returns:
The policy result object.

applyCert

public PolicyResult applyCert(IRequest req,
                              netscape.security.x509.X509CertInfo certInfo)

getInstanceParams

public java.util.Vector getInstanceParams()
Return configured parameters for a policy rule instance.

Specified by:
getInstanceParams in interface IPolicyRule
Specified by:
getInstanceParams in class APolicyRule
Returns:
nvPairs A Vector of name/value pairs.

getDefaultParams

public java.util.Vector getDefaultParams()
Return default parameters for a policy implementation.

Specified by:
getDefaultParams in interface IPolicyRule
Specified by:
getDefaultParams in class APolicyRule
Returns:
nvPairs A Vector of name/value pairs.

getExtendedPluginInfo

public java.lang.String[] getExtendedPluginInfo(java.util.Locale locale)
gets plugin info for pretty console edit displays.

Specified by:
getExtendedPluginInfo in interface IExtendedPluginInfo