
Problem

Service endpoint identifiers include information that can change over time. Companies can be re-branded. Service inventories can be combined or split due to corporate merger and acquisition or divestment. Fine-grained endpoints or poorly-selected endpoint identifiers may change for more technical reasons. It may not be possible to replace all references to the old endpoint simultaneously and the transition needs to be managed.
|
|

Solution

Automatically refer service consumers that access the stale endpoint identifier to the current identifier.
|
|

Application

Include endpoint redirection as a feature of the endpoint's contract. When a service consumer invokes a capability on a stale endpoint identifier, return a redirection response. Service consumers follow the redirection instructions and retry their request to the new endpoint identifier. Redirections can be temporary or permanent. Permanent redirections are automatically recorded in the service consumer's configuration data to avoid further requests to the stale identifier.
|
 |
 |
 |

Impacts

Returning redirection information to the client requires clients to determine in advance how much to trust a redirection response. A service that has been compromised from a security perspective may cause the client to permanently change its identifiers to point the attacker's desired service. A mis-configured service could lead to similar disruption. Care may also need to be taken in order to avoid infinite redirection loops.
|
|
|
|
|
|

Status

Under Review
|
 |
 |
 |

Contributors

Balasubramanian, Carlyle, Pautasso
|
|
|
| |

Redirection built into service contracts along with predefined redirection rules allows the set of service endpoints to evolve without needing to immediately upgrade service consumers that still hold stale references. Explicit upgrades may be avoided entirely if permanent redirections are used.


|