JCREPermission (Java Card SPI, Connected Edition)
Date: 2009-12-11

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javacardx.spi.framework
Class JCREPermission

    java.lang.Object
      java.security.Permission
          java.security.BasicPermission
              javacardx.spi.framework.JCREPermission

    @TransactionType(value=NOT_SUPPORTED)
    public final class JCREPermission

extends BasicPermission

This class is for Java Card runtime environment (RE) permissions. A JCREPermission contains a name (also referred to as a "target name") but no actions list; the named permission is either granted or not.

The target name is the name of the JCREPermission (see below). The naming convention follows the hierarchical property naming convention. Also, an asterisk may appear at the end of the name, following a ".", or by itself, to signify a wildcard match. For example: "callPermJCREEPO.*" or "*" is valid, "*callPermJCREEPO" or "c*O" is not valid.

The possible target names are "callTempJCREEPO.CLASSIC", "callPermJCREEPO.{class name}", "callPermJCREEPO.CLASSIC", "callPermJCREEPO.EXTENDED", "callPermJCREEPO.CARDMGMT". Their meaning is defined as follows:

callTempJCREEPO.CLASSIC
  Invocation of objects belonging to the following Classic set of temporary Java Card RE Entry Point Objects (EPO) and Global Arrays:
  - Java Card RE-owned instances of `APDU`
  - APDU buffer `byte` array
  - the byte array - `bArray` - parameter to the `Applet.install(byte[], short, byte)` method
  This grants code permission to call any methods or access any fields of such Java Card RE-owned objects and as a result switch to the Java Card RE context. References to these objects cannot be stored.
callPermJCREEPO.{class name}
  Invocation of Java Card RE-owned instances of the designated class as permanent Java Card RE Entry Point Objects (EPO). This grants code permission to call any methods of such Java Card RE-owned objects and as a result switch to the Java Card RE context.
callPermJCREEPO.CLASSIC
  Invocation of objects belonging to the following Classic set of permanent Java Card RE Entry Point Objects (EPO):
  - Java Card RE-owned instances of `AID`
  This grants code permission to call any methods of such Java Card RE-owned objects and as a result switch to the Java Card RE context.
callPermJCREEPO.EXTENDED
  Invocation of objects belonging to the following Extended set of permanent Java Card RE Entry Point Objects (EPO):
  - Java Card RE-owned singleton instance of `Runtime`
  - Java Card RE-owned singleton instance of `EventRegistry`
  - Java Card RE-owned singleton instance of `ServiceRegistry`
  - Java Card RE-owned singleton instance of `TaskRegistry`
  - Java Card RE-owned instances of `Permission`
  - The Java Card RE-owned instances of `PrintStream` assigned to `System.err` and `System.out`
  This grants code permission to call any methods of such Java Card RE-owned objects and as a result switch to the Java Card RE context.
callPermJCREEPO.CARDMGMT
  Invocation of objects belonging to the following Card Management set of permanent Java Card RE Entry Point Objects (EPO):
  - Java Card RE-owned instances of `ProtectionDomain`
  - Java Card RE-owned instances of `CryptoProvider`
  - Java Card RE-owned instances of `Application`
  - Java Card RE-owned instances of `DeploymentUnit`
  - Java Card RE-owned singleton instance of `DeploymentUnitLoader`
  This grants code permission to call any methods of such Java Card RE-owned objects and as a result switch to the Java Card RE context.

Since:
  Java Card 3.0
See Also:
  `BasicPermission`, `Permission`, `AccessController`, `AccessControlException`, `JCSystem`

Field Summary
`static String` | `NAME_CALL_PERM_JCRE_EPO` The "callPermJCREEPO" name.
`static String` | `NAME_CALL_PERM_JCRE_EPO_CARDMGMT` The "callPermJCREEPO.CARDMGMT" name.
`static String` | `NAME_CALL_PERM_JCRE_EPO_CLASSIC` The "callPermJCREEPO.CLASSIC" name.
`static String` | `NAME_CALL_PERM_JCRE_EPO_EXTENDED` The "callPermJCREEPO.EXTENDED" name.
`static String` | `NAME_CALL_TEMP_JCRE_EPO_CLASSIC` The "callTempJCREEPO.CLASSIC" name.

Constructor Summary
`JCREPermission(String name)` Creates a new JCREPermission with the specified name.

Method Summary

Methods inherited from class java.security.BasicPermission
`equals, getActions, hashCode, implies`

Methods inherited from class java.security.Permission
`getName, toString`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### NAME_CALL_TEMP_JCRE_EPO_CLASSIC

    public static final String NAME_CALL_TEMP_JCRE_EPO_CLASSIC

  The "callTempJCREEPO.CLASSIC" name.

  See Also:
    Constant Field Values

### NAME_CALL_PERM_JCRE_EPO

    public static final String NAME_CALL_PERM_JCRE_EPO

  The "callPermJCREEPO" name.

  See Also:
    Constant Field Values

### NAME_CALL_PERM_JCRE_EPO_CLASSIC

    public static final String NAME_CALL_PERM_JCRE_EPO_CLASSIC

  The "callPermJCREEPO.CLASSIC" name.

  See Also:
    Constant Field Values

### NAME_CALL_PERM_JCRE_EPO_EXTENDED

    public static final String NAME_CALL_PERM_JCRE_EPO_EXTENDED

  The "callPermJCREEPO.EXTENDED" name.

  See Also:
    Constant Field Values

### NAME_CALL_PERM_JCRE_EPO_CARDMGMT

    public static final String NAME_CALL_PERM_JCRE_EPO_CARDMGMT

  The "callPermJCREEPO.CARDMGMT" name.

  See Also:
    Constant Field Values

Constructor Detail

### JCREPermission

    public JCREPermission(String name)

  Creates a new JCREPermission with the specified name. The name is the symbolic name of the JCREPermission, such as "callPermJCREEPO.CLASSIC", etc. An asterisk may appear at the end of the name, following a ".", or by itself, to signify a wildcard match such as "callPermJCREEPO.*".

  Parameters:
    `name` - the name of the JCREPermission.
  Throws:
    `NullPointerException` - if `name` is `null`.
    `IllegalArgumentException` - if `name` is not a recognized target name.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.