2011-10-11 114 views
0

我正在我的网站上实施Facebook登录。我正在创建一个asp.net用户以及Facebook用户的详细信息。通过这种方式,我可以控制用户使用.NET会员身份登录到我的网站,无论他们是否是Facebook用户。使用ASP.NET登录Facebook

我现在面临的问题是安全性。当用户使用Facebook登录时,如果用户存在于系统中(通过他们的facebook用户名),我将调用带有他们的Facebook详细信息的web服务,然后我将它们登录。但是,正如任何人都可以与别人一起调用Web服务elses facebook id并将它们登录(如果该用户存在于系统中)。有什么我可以用来链接facebook用户与我的asp.net用户只能访问该用户,如访问令牌。它也需要是不变的东西? Facebook会在响应对象中发回这样的东西吗?

任何帮助或建议,非常感谢。

谢谢

+0

你使用Facebook的登录按钮或一些'其他'的机制?你需要什么'webservice'来获取Facebook的详细信息? –

+0

如果您使用Facebook登录按钮,则可以检查用户是否成功登录。你做那个? –

+0

我使用的是Facebook Javascript API。我调用FB.login,然后使用响应对象来调用我自己的webservice。 – Peuge

回答

1

是的,我们可以从Facebook获取该配置文件数据。使用该requestAccessToken Url,您可以获得该访问令牌。

requestAccessTokenurl = “https://graph.facebook.com/oauth/access_token?client_id={0} REDIRECT_URI = {1}; client_secret = {2};代码= {3}”

此外,我们可以使用此访问令牌 requestProfileUrl =“https://graph.facebook.com/me”

请参阅本链路http://easyoauth.codeplex.com/

你也可以下载源代码:)

拿到档案资料

我们已经为Facebook,T witter,LinkedIn,谷歌使用这个框架。这是非常直接的。我可以帮助你如何做到这一点。

谢谢

+0

请通过此链接http://benbiddington.wordpress.com/2010/04/23/facebook-graph-api-getting-access-tokens/ – himanshu

+0

所以访问令牌是唯一的,它永远不会改变?我需要的东西只能通过Facebook用户登录访问。谢谢 – Peuge

+0

请参阅下面的链接。它可能会给你一些想法如何继续你的要求。 http://bhaidar.net/post/2011/04/04/OpenID-Single-Sign-On-ASPNET-Web-Forms.aspx – himanshu