What is the best way of saving user credentials in a Silverlight application?
We’re making use of the new Silverlight 3 feature that allows WCF calls to be authenticated: we prompt the user for their credentials to the service within Silverlight, and we want to offer a “remember my password” feature.
In .Net we can use the ProtectedData class, but it appears that there is no Silverlight version of this available.
We’re saving credentials to isolated storage and using the System.Security.Cryptography.AesManaged class to encrypt them. This is hackable – if someone got on your users computer and had already compromised the user’s network/Windows login they could read the isolated storage file & pull the keys from your .xap to decrypt the data. For our purposes that’s an acceptable risk.