Annotation Type RequiresPermissions


Requires the current executor's Subject to imply a particular permission in order to execute the annotated method. If the executor's associated Subject determines that the executor does not imply the specified permission, the method will not be executed.

For example, this declaration:

@RequiresPermissions( {"file:read", "write:aFile.txt"} )
void someMethod();

indicates the current user must be able to both read and write to the file aFile.txt in order for the someMethod() to execute, otherwise an AuthorizationException will be thrown.

Since:
0.1
See Also:
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The permission string which will be passed to Subject.isPermitted(String) to determine if the user is allowed to invoke the code protected by this annotation.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    The logical operation for the permission checks in case multiple roles are specified.
  • Element Details

    • value

      The permission string which will be passed to Subject.isPermitted(String) to determine if the user is allowed to invoke the code protected by this annotation.
    • logical

      The logical operation for the permission checks in case multiple roles are specified. AND is the default
      Since:
      1.1.0
      Default:
      AND