2012-04-13 34 views
0

我想验证我的Silverlight应用程序来获取Windows用户名,然后我用它来获得一些进一步的信息。查过它,但我找到的答案是关于配置Web服务来获取它。有没有办法,在Silverlight中严格取得Windows凭据?我无法找到.Credentials,我唯一看到的是.ClientCredentials,但显然它没有显示所需的信息。我得到字符串“System.ServiceModel.Security.UserNamePasswordClientCredential”。它实际上允许我设置名称,而不是检索它。还有一个叫做authentication.asmx的web服务,但是和以前一样,它适用于其他目的。我也没有任何可以参考和配置它们的Web服务。或者我错过了什么?也许我可以通过NTLM或Kerberos检索Windows凭据?我正在使用Silverlight 5的Visual Web Developer 2010 Express。Silverlight的Sharepoint 2010的Web部分Windows身份验证

回答

0

我的经验是,在asp.net世界中存在的成员资格框架在silverlight中不可用。为了实现类似的东西,我必须实现一个针对域的活动目录(ldap)服务器的Web服务(WCF)。 Silverlight在互操作性方面是一个非常严格的框架,它对安全性有好处,但有一些限制。

我不确定您对活动目录的知识水平,但是这里有一个链接,它处理很多可能的操作,并且有示例C#代码。

http://www.codeproject.com/Articles/18102/Howto-Almost-Everything-In-Active-Directory-via-C#40a

+0

因此,它看起来像有没有其他的选择,而不是部署Web服务来做到这一点。是否有可能使它在共享点环境中工作,还是必须是外部的? – Tegenaris 2012-04-16 07:12:58

+0

我从来没有在共享点环境中进行身份验证,但此链接似乎表示它可能是http://msdn.microsoft.com/en-us/library/websvcauthentication.authentication.aspx看起来好像你已在sharepoint预定义可以实现/覆盖的服务。希望这可以帮助。 – Stainedart 2012-04-16 13:32:24