EP1102154A2

Mechanism for determining restrictions to impose on an implementation of a service

Abstract

A mechanism for determining restrictions to impose on an implementation of a service is disclosed. When an application desires an implementation for a particular service, the application makes a request to a framework. The framework receives the request and, in response, determines what restrictions, if any, need to be imposed on the requested implementation. The restrictions are determined by determining whether any permissions have been granted to the application requesting the implementation, and if so, processing the permissions to derive a set of zero or more restrictions to impose on the implementation. The permissions are processed such that the set of restrictions is least restrictive. Once the restrictions are determined, the framework dynamically constructs the requested implementation. The requested implementation is constructed such that it incorporates a general implementation of the service, the restrictions, and enforcement logic for enforcing the restrictions on the general implementation. Once the requested implementation is constructed, it is provided to the application. Thereafter, the application invokes the requested implementation directly for services. Since the requested implementation incorporates the restrictions and enforcement logic for enforcing the restrictions, it will guarantee that the restrictions are enforced.

EP1102154A2, drawing sheet 1
Sheet 1 of 16

Term

Term ended

Projected expiry passed 7 November 2020, 5.9 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

44 claims: 17 independent, 27 dependent

  1. 1
    In a system wherein an application requests an implementation of a particular service, a method for determining restrictions to impose on the implementation, comprising:determining whether any permissions have been granted to the application requesting the implementation;and in response to a determination that at least one permission has been granted to the application, processing said permission to derive a set of zero or more restrictions to impose on the implementation.
  2. 5
    The method of any preceding claim, wherein processing said permission comprises:determining whether said permission is an all-encompassing permission;and in response to a determination that said permission is an all-encompassing permission, providing an indication that the implementation is unrestricted.
  3. 6
    The method of any of claims 1 to 4, wherein processing said permission comprises:determining whether said permission requires an exemption mechanism to be implemented;and in response to a determination that said permission does not require an exemption mechanism to be implemented, deriving said set of zero or more restrictions based upon said permission.
  4. 9
    The method of any preceding claim, wherein processing said permission comprises:determining whether said permission requires a particular exemption mechanism to be implemented;and in response to a determination that said permission requires a particular exemption mechanism to be implemented, accessing a set of exempt limitations;and reconciling said permission and said exempt limitations to derive said set of zero or more restrictions.
  5. 12
    The method of any of claims 9 to 11, wherein said exempt limitations are derived by merging multiple jurisdiction policies and extracting therefrom the most restrictive limitations.
  6. 13
    The method of any preceding claim, wherein determining whether any permissions have been granted to the application comprises:traversing a call stack to determine which application requested the implementation.
  7. 15
    In a system wherein an application requests an implementation of a particular service, a mechanism for determining restrictions to impose on an the implementation of a particular service requested by an application in a computer system, the mechanism for determining restrictions comprising:a mechanism for determining whether any permissions have been granted to the application requesting the implementation;and a mechanism for processing, in response to a determination that at least one permission has been granted to the application, said permission to derive a set of zero or more restrictions to impose on the implementation.
  8. 19
    The mechanism for determining restrictions of any of claims 15 to 18, wherein the mechanism for processing said permission comprises:a mechanism for determining whether said permission is an all-encompassing permission;and a mechanism for providing, in response to a determination that said permission is an all-encompassing permission, an indication that the implementation is unrestricted.
  9. 20
    The mechanism for determining restrictions of any of claims 15 to 18, wherein the mechanism for processing said permission comprises:a mechanism for determining whether said permission requires an exemption mechanism to be implemented;and a mechanism for deriving, in response to a determination that said permission does not require an exemption mechanism to be implemented, said set of zero or more restrictions based upon said permission.
  10. 23
    The mechanism for determining restrictions of any of claims 15 to 22, wherein the mechanism for processing said permission comprises:a mechanism for determining whether said permission requires a particular exemption mechanism to be implemented;and a mechanism for accessing, in response to a determination that said permission requires a particular exemption mechanism to be implemented, a set of exempt limitations;and a mechanism for reconciling said permission and said exempt limitations to derive said set of zero or more restrictions.
  11. 26
    The mechanism for determining restrictions of any of claims 23 to 25, wherein said exempt limitations are derived by merging multiple jurisdiction policies and extracting therefrom the most restrictive limitations.
  12. 27
    The mechanism for determining restrictions of any of claims 15 to 26, wherein the mechanism for determining whether any permissions have been granted to the application comprises:a mechanism for traversing a call stack to determine which application requested the implementation.
  13. 29
    A computer program operable, when executed by one or more processors, to cause the one or more processors to determine restrictions to impose on an implementation of a particular service requested by an application, said computer readable medium comprising:instructions for causing one or more processors to determine whether any permissions have been granted to the application requesting the implementation;and instructions for causing one or more processors to process, in response to a determination that at least one permission has been granted to the application, said permission to derive a set of zero or more restrictions to impose on the implementation.
  14. 33
    The computer program of any of claims 29 to 32, wherein the instructions for causing one or more processors to process said permission comprises:instructions for causing one or more processors to determine whether said permission is an all-encompassing permission;and instructions for causing one or more processors to provide, in response to a determination that said permission is an all-encompassing permission, an indication that the implementation is unrestricted.
  15. 34
    The computer program of any of claims 29 to 32, wherein the instructions for causing one or more processors to process said permission comprises:instructions for causing one or more processors to determine whether said permission requires an exemption mechanism to be implemented;and instructions for causing one or more processors to derive, in response to a determination that said permission does not require an exemption mechanism to be implemented, said set of zero or more restrictions based upon said permission.
  16. 37
    The computer program of any of claims 29 to 36, wherein the instructions for causing one or more processors to process said permission comprises:instructions for causing one or more processors to determine whether said permission requires a particular exemption mechanism to be implemented;and instructions for causing one or more processors to access, in response to a determination that said permission requires a particular exemption mechanism to be implemented, a set of exempt limitations;and instructions for causing one or more processors to reconcile said permission and said exempt limitations to derive said set of zero or more restrictions.
  17. 41
    The computer program of any of claims 29 to 31, wherein the instructions for causing one or more processors to determine whether any permissions have been granted to the application comprises:instructions for causing one or more processors to traverse a call stack to determine which application requested the implementation.
  18. 43
    A computer program product comprising the computer program of any of claims 29 to 42 on a carrier medium.
  19. 44
    A computer system comprising the mechanism for determining restrictions of any of claims 15 to 28.
Independent claims19