PermissionInformation

Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.ocap.application
Class PermissionInformation

    java.lang.Object
      org.ocap.application.PermissionInformation

    public abstract class PermissionInformation

extends Object

This class contains information to allow the monitor application to choose the permissions to grant to an application.

See Also:
  `SecurityPolicyHandler`

Method Summary
`abstract AppID` | `getAppID()` This method returns an AppID of an application to be granted a requested set of Permissions that is returned by the `getRequestedPermissions()` method.
`abstract Certificate[][]` | `getCertificates()` Returns the set of valid certificates that were used to sign the application identified by the AppID returned by the getAppID() method.
`abstract PermissionCollection` | `getRequestedPermissions()` This method returns the requested set of Permissions for the application specified by the AppID that is returned by the `getAppID()` method.
`static PermissionCollection` | `getUnsignedAppPermissions()` This method returns the set of Permissions that are requested by all unsigned applications.
`abstract boolean` | `isManufacturerApp()` Returns true if and only if the application identified by the AppID returned by the getAppID() is a Host Device Manufacturer applications.
`abstract boolean` | `isPrivilegedCertificate(Certificate cert)` Verifies that an end-entity certificate used to validate and application or file is a member of the list of privileged certificates in the privileged certificate descriptor.

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

Method Detail

### getAppID

    public abstract AppID getAppID()

  This method returns an AppID of an application to be granted a requested set of Permissions that is returned by the `getRequestedPermissions()` method.

  Returns:
    The AppID instance of an application to be granted a requested set of Permissions which is returned by the `getRequestedPermissions()` method.
  Throws:
    `SecurityException` - if the caller does not have MonitorAppPermission("security").

### isManufacturerApp

    public abstract boolean isManufacturerApp()

  Returns true if and only if the application identified by the AppID returned by the getAppID() is a Host Device Manufacturer applications.

  Returns:
    true if and only if the application identified by the AppID returned by the getAppID() is a Host Device Manufacturer application.

### getCertificates

    public abstract Certificate[][] getCertificates()

  Returns the set of valid certificates that were used to sign the application identified by the AppID returned by the getAppID() method.

  Note that for Host Device Manufacturer applications, this may be an empty array.

  For unsigned applications, this shall be an empty array.

  Returns:
    The return value is a two dimensional array of certificates where each member of the outer dimension represents a certificate chain that authenticates the application. The order of certificate chains in the outer array is unspecified. Each member of the inner dimension contains a certificate in the chain with the root certificate in the first member and the end-entity certificate in the final member of the array. Each certificate in the inner array authenticates the certificate contained in the next array member.

### isPrivilegedCertificate

    public abstract boolean isPrivilegedCertificate(Certificate cert)

  Verifies that an end-entity certificate used to validate and application or file is a member of the list of privileged certificates in the privileged certificate descriptor.

  Parameters:
    `cert` - The X.509 certificate that is to be checked against the list of privileged certificates in the privileged certificate descriptor.
  Returns:
    The return value is set to true if the SHA-1 hash of the supplied certificate matches one of the hash values listed in the privileged certificate descriptor.

### getUnsignedAppPermissions

    public static PermissionCollection getUnsignedAppPermissions()

  This method returns the set of Permissions that are requested by all unsigned applications. The contents of this set of permissions is defined elsewhere in this specification.

  Returns:
    A read-only instance of a sub class of PermissionCollection containing the set of Permissions for an unsigned application.

### getRequestedPermissions

    public abstract PermissionCollection getRequestedPermissions()

  This method returns the requested set of Permissions for the application specified by the AppID that is returned by the `getAppID()` method.

  For Host Device Manufacturer applications, this is the set of permissions requested for the application by the Host Device Manufacturer. Note that this may include manufacturer-specific permissions (e.g. a manufacturer-specific permission to access a DVD player API).

  For other applications, the requested set of Permissions consists of Permissions that are requested in a permission request file and Permissions requested for unsigned applications.

  Note that the requested set of Permissions always includes the permissions requested for unsigned applications, as returned by getUnsignedAppPermissions().

  Returns:
    An instance of a sub class of the PermissionCollection containing the requested set of Permissions for an application to be launched. The application is specified by the AppID returned by the `getAppID()` method.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD