Class WrapperUserEventPermission

  • All Implemented Interfaces:
    java.io.Serializable, java.security.Guard

    public final class WrapperUserEventPermission
    extends java.security.BasicPermission
    WrapperEventPermissions are used to grant the right to register to start receiving events from the Wrapper.

    Some of these permissions can result in performance degredations if used impropperly.

    The following are examples of how to specify the permission within a policy file.

       grant codeBase "file:../lib/-" {
         // Grant various permissions to a specific service.
         permission org.tanukisoftware.wrapper.security.WrapperEventPermission "service";
         permission org.tanukisoftware.wrapper.security.WrapperEventPermission "service, core";
         permission org.tanukisoftware.wrapper.security.WrapperEventPermission "*";
       };
     

    Possible eventTypes include the following:

    Permission Event Type Name What the Permission Allows Risks of Allowing this Permission
    service Register to obtain events whenever the Wrapper service receives any service events. Malicious code could receive this event and never return and thus cause performance and timeout problems with the Wrapper. Normal use of these events are quite safe however.
    control Register to obtain events whenever the Wrapper receives any system control signals. Malicious code could trap and consome control events, thus preventing an application from being shut down cleanly.
    core Register to obtain events on the core workings of the Wrapper. Malicious code or even well meaning code can greatly affect the performance of the Wrapper simply by handling these methods slowly. Some of these events are fired from within the core timing code of the Wrapper. They are useful for testing and performance checks, but in general they should not be used by most applications.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      WrapperUserEventPermission​(java.lang.String action)
      Creates a new WrapperEventPermission for the specified service.
      WrapperUserEventPermission​(java.lang.String name, java.lang.String action)
      Creates a new WrapperEventPermission for the specified service.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getActions()
      Return the canonical string representation of the eventTypes.
      boolean implies​(java.security.Permission p2)
      Checks if this WrapperEventPermission object "implies" the specified permission.
      • Methods inherited from class java.security.BasicPermission

        equals, hashCode, newPermissionCollection
      • Methods inherited from class java.security.Permission

        checkGuard, getName, toString
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • WrapperUserEventPermission

        public WrapperUserEventPermission​(java.lang.String action)
        Creates a new WrapperEventPermission for the specified service.
        Parameters:
        action - The event type or event types to be registered.
      • WrapperUserEventPermission

        public WrapperUserEventPermission​(java.lang.String name,
                                          java.lang.String action)
        Creates a new WrapperEventPermission for the specified service.
        Parameters:
        name - Name of the event.
        action - The event type or event types to be registered.
    • Method Detail

      • getActions

        public java.lang.String getActions()
        Return the canonical string representation of the eventTypes. Always returns present eventTypes in the following order: start, stop, pause, continue, interrogate. userCode.
        Overrides:
        getActions in class java.security.BasicPermission
        Returns:
        The canonical string representation of the eventTypes.
      • implies

        public boolean implies​(java.security.Permission p2)
        Checks if this WrapperEventPermission object "implies" the specified permission.

        More specifically, this method returns true if:

        • p2 is an instanceof FilePermission,
        • p2's eventTypes are a proper subset of this object's eventTypes, and
        • p2's service name is implied by this object's service name. For example, "MyApp*" implies "MyApp".
        Overrides:
        implies in class java.security.BasicPermission
        Parameters:
        p2 - the permission to check against.
        Returns:
        True if the specified permission is implied by this object.