Hallo Dominick,Grüß Gott
I like that solution more, but more on a conceptual level and in the words of Geneva Server: Is a client a relying party with an identifier? Is it crazy to think that an RP identifier has to be a physical URL (because that what I'm thinking)?
Also, just to make sure that I understand your scenario correctly:
1) I'm guessing the client requests the token from the same STS that the services have trust to?
2) The client then proceeds to use the one of the STS' own issued tokens for authentication against other services trusting that STS
3) The STS identifies the user based on the identity token and the repopulates new tokens for each service
It's very elegant, but it does seem a bit heavy on the coding on each client having to know wstrustclients and doing some if not a lot of programmatic channel creation.
Anyway, definitely the best idea I've heard so far.
Rgds.
Jesper Hvid