I'm implementing web services, there are a client and many web services in the system. Here is my scenario, a client invokes web service A (so it sends the soap request to A) in order to satisfy the client's request, A needs to invokes another web service (B). Each invocation needs to check the authorization first, So I would like to know who makes a calls and I don't want to pass the sender id as a parameter of services. For example,
Client1
invokes serviceA
ServiceA
invokes serviceB
- ect...
I use Servlet Filter
in order to intercept http request and I try to get informations from http header but I couldn't find any information about the sender. For the invocation from the client, I can find the username from sessions/cookies, but I couldn't find anything in the invocation from A.
So I would like to know how we can get the sender of soap request or http request in this situation. Any suggestion?