×

Policy processing model

  • US 7,730,138 B2
  • Filed: 07/14/2004
  • Issued: 06/01/2010
  • Est. Priority Date: 07/14/2004
  • Status: Active Grant
First Claim
Patent Images

1. A method implemented in a Web services environment used for exchanging messages within a distributed system, the method for processing policies that include a plurality of policy assertions associated with incoming or outgoing messages of an application, without having to have code within the application for executing the one or more policy assertions, the method comprising acts of:

  • receiving a message at a Web service engine, the message being an outgoing message and having been sent by a sending application of a sender to a receiving endpoint or a receiver, the sender and the receiver being external to, and separate from, the Web service engine, and the application configured to exchange messages in a distributed system; and

    prior to receipt of the message by the receiver, and at the Web service engine disposed between the sender and the receiver;

    accessing a policy document that is specific to the application sending the message received at the Web service engine, the policy document having been generated by the developer of the application sending the message received at the Web service engine and for identifying a plurality of objects corresponding to a plurality of policy assertions included in the policy document;

    after identifying the plurality of objects identified in the policy document, generating at least one assertion handler for each object, which assertion handlers are software entities that include executable code configured to determine whether the received message can satisfy requirements described by the plurality of policy assertions included in the policy document generated by the developer of the application; and

    using the at least one assertion handler to determine whether the received message satisfies the requirements described by the policy document;

    evaluating the at least one assertion handler to determine whether the received message can be modified using a first compiled policy to satisfy the requirements described by the policy document, the first compiled policy being formatted from the evaluated at least one assertion handler, wherein the first compiled policy is stored for applying to messages with similar endpoint destination and message types, and wherein when one or more of the at least one assertion handlers used to modify the received message are determined to be no longer capable of changing the message to conform to the requirements, an error is returned to the sending application;

    after evaluating the at least one assertion handler to determine whether the received message can be modified using the first compiled policy, evaluating one or more of the plurality of assertion handlers to determine whether the message can be modified to satisfy the requirements described by the policy document, and by using a second compiled policy for modifying the message to satisfy the requirements, wherein the second compiled policy is formatted from the one or more one assertion handlers evaluated to determine whether the message can be modified using the second compiled policy; and

    discarding of the received message when the message fails to satisfy or cannot be modified to satisfy such requirements of the policy document.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×