Я разрабатываю приложение silverlight 3 с использованием служб WCF RIA. Для проверки подлинности я использую класс AuthenticationBase. Поскольку я понимаю это под капотом, это использует библиотеки аутентификации ASP .NET.Как хранить состояние в Silverlight WCF RIA Services
Когда я вхожу на сайт, служба аутентификации обрабатывает состояние входа в систему, чтобы, если я закрою сайт и немедленно его откройте, я все равно зарегистрировался в соответствии с сервером. Когда веб-страница обновляется или закрыт, и перезагружается я могу вызвать метод,
WebContextBase.Current.Authentication.LoadUser()
И он идет обратно в службу аутентификации (работает на сервере) и выясняет, является ли Я все еще зашел на сайт. Если произойдет тайм-аут, ответ будет отрицательным. Если это так, я могу показать диалог входа в систему.
Проблема, которую я хочу решить, заключается в том, что служба аутентификации использует пароль, и я никогда не смогу восстановить этот пароль еще раз.
Если пользователь заходит на сайт, я хочу сохранить пароль на сервере и вернуть токен на клиентскую сторону, чтобы соответствовать этому паролю. У меня есть другие службы на стороне сервера, которым нужен этот пароль.
Итак, где я должен хранить этот пароль на сервере? Как это можно сделать? Как состояние проверки подлинности WCF?
Возможно ли реализовать статический класс? Это то, что я пробовал и, похоже, работает. Я позаботился о том, чтобы использовать блокировку, чтобы данные не могли быть изменены более чем одним клиентом за раз. – peter