Description
What is the problem?
When the service broker is used across multiple platform instances, it would be nice to understand which instance is making a call.
It seems that Spring Cloud Open Service Broker implementation has such a header defined, however, I could not find traces of it in the spec..
Who does this affect?
Does this affect service broker authors, platform authors or developers?
- developers,
- platform authors
- broker authors
Do you have any proposed solutions?
Include an X-Api-Info-Location header as a part of the specification and allow for platforms to set this header during all requests (catalog, provision, bind, unbind, update, deprovision)
The format of the header MUST be:
X-Api-Info-Location: Platform value
Example:
X-Api-Info-Location: cloudfoundry ewogICJpbmZvX2xvY2F0aW9uX3VybCI6ICJodHRwczovL2FwaS5wbGF0Zm9ybS5leGFtcGxlLmNvbS92Mi9pbmZvIgp9
Where the value, when decoded, is:
{
"info_location_url": "https://api.platform.example.com/v2/info"
}
Additional context
Here is how Pivotal describes the usage:
X-Api-Info-Location Header
All calls to the broker from Cloud Foundry include an X-Api-Info-Location header containing >the /v2/info url for that instance. The /v2/info endpoint will return further information, >including the location of that Cloud Foundry instance’s UAA.
Support for this header was introduced in cf-release v212.
Pivotal Docs