[# question edited to clarify #]
I am trying to implement Single Sign On (SSO) for a web application. Maybe you can help me find the right solution, give me direction or say that solutions already exist.
Scenario: GeoExt (ExtJS for geodata / map-based applications) webapp (JavaScript only) will be deployed to the client web server.
The client will define "usecases" or "profiles": a set of services such as webservices, GeoServer WFS, WCS, Google Maps, etc. These services may require additional authentication, such as credentials or keys.
The user (who needs to register and apply for a "profile") can (as soon as the application is provided) receive the credentials necessary to access the services associated with his profile. As in the usual SSO solution, the user does not need to enter each account key / key for himself in order to use the services.
[# no changes here ... #]
The main problem: I can not change third-party services (for example, Google) to add the SSO mechanism.
I would like to have a solution that allows the user to log in once to gain access to all the required services. My first idea was a repository that stores all the necessary credentials or keys. The user is registered and can get all the necessary information to access other services. Does anyone know about existing implementations, documents, perhaps implementations of such services?
Other requirements. The connection between the JS application and the repository should be secure. Credentials must be stored in a secure manner. But the JS application should be able to use them to access services (there is no way to safely store the decryption key in the JS application, eh? * G).
[edit] Proxying is not an option due to the terms of use of the services involved.