javacardx.security
Annotation Type SensitiveType


@Retention(value=CLASS)
@Target(value=TYPE)
@Inherited
@Documented
public @interface SensitiveType

Annotation for specifying the expected security level on a given type (class or interface).

This annotation allows for specifying an expected security level on a class, thereby indicating that all the methods and fields of that class and subclasses thereof are sensitive.

This annotation when specified on an interface has just an informative purpose and simply describes the security level that is expected of classes which implement the interface. The security level effectively expected is that of the classes which implement the interface.

Note - This annotation is tagged with the @Inherited meta-annotation which implies that any subtype of an annotated type inherits the same annotation.

See Runtime Environment Specification for the Java Card Platform, Connected Edition , appendix B for details regarding security annotations.

See Also:
SensitivityValue

Required Element Summary
 SensitivityValue sensitivity
          The sensitivity, meaning the security level that is expected on the currently annotated type.
 
Optional Element Summary
 String proprietaryValue
          Additional information that can be used by proprietary tools or platform in order to perform more precise tasks.
 

Element Detail

sensitivity

public abstract SensitivityValue sensitivity
The sensitivity, meaning the security level that is expected on the currently annotated type.

Authorized values for this member are:

INTEGRITY
Tagging a type as sensitive in INTEGRITY indicates that:
  • Consistency of the data (the fields) of the class is important. If this data is modified outside the scope of the normal proposed services, it could be detrimental to the application, the application user, and/or the application provider.
  • Consistency of the services (the methods) of the class is important. If these services’ behavior is modified outside the scope of the normal proposed services, it could be detrimental to the application, the application user and/or the application provider.
  • CONFIDENTIALITY
    Tagging a type as sensitive in CONFIDENTIALITY indicates that:
  • Hiding the data (the fields) of the class from the outside is important. If this data is disclosed outside the application, it could be detrimental to the application, the application user, and/or the application provider.
  • Hiding the data handling by the services (the methods) of the class from the outside is important. If the data handling by these services is disclosed outside the application, it could be detrimental to the application, the application user and/or the application provider.
  • FULL
    Tagging a type as FULL in sensitivity is equivalent to annotating the type both as sensitive in INTEGRITY and in CONFIDENTIALITY.

    See Also:
    SensitivityValue

    proprietaryValue

    public abstract String proprietaryValue
    Additional information that can be used by proprietary tools or platform in order to perform more precise tasks. This element allows for a platform provider to give its own proprietary information in order to improve its tools processing or VM execution. This information may be ignored when processed for another provider.

    Any string are authorized as value of this member.

    Default:
    ""


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