我需要单点登录才能使用两种类型的应用程序:Silverlight 3和Windows Forms。
您对我如何实现这一点有什么建议吗? Windows身份验证是一种可能的解决方还有其他吗?
由于 最好的问候
答案 0 :(得分:1)
用户是否通过Windows域进行身份验证?如果是这样,您可以使用IIS中的域凭据(假设它将托管Silverlight的Web服务)和您的WinForms。
在IIS端,您将对托管Silverlight的网站使用Windows身份验证。
您可以使用WindowsIdentity.GetCurrentUser()获取当前用户。从那里,您可以获得用户名等,并将该安全上下文映射到您的应用程序的内部授权。
这里的总体想法是,当用户登录到他们的工作站时会发生单点登录,Winforms和IIS(Silverlight)都会使用该安全上下文。