2011-07-13 136 views
0

我已经实施Facebook用户身份验证与我目前的项目,现在我想实施授权。我需要授权来检查用户是否在尝试执行操作时登录。任何人都可以指向一个与我的情况相关的资源,或者可能帮助我?用户授权与Facebook

编辑:我相信这个授权需要在服务器端,因为我也想验证特定的用户权限(例如,如果用户是管理员)。

[DataContract(IsReference = true)] 
public partial class User : Entity 
{ 

    [DataMember] 
    public long ID { get; private set; } 

    [DataMember] 
    public long FacebookID { get; set; } 

    [DataMember] 
    public string AccessToken { get; set; } 

    [DataMember] 
    public long Expires { get; set; } 

    [DataMember] 
    public string FirstName { get; set; } 

    [DataMember] 
    public string LastName { get; set; } 

} 

回答

0

FB.getLoginStatus

您可以用JavaScript SDK

$('button.action').click(function() { 
    FB.getLoginStatus(function(response) { 
     if(response.session) { 
     // user logged in. 
     } else { 
      // log him in. 
     } 
    }); 
    return false; 
}); 
+0

我要授权的行动,一个登录的用户需要做到这一点。由于这些信息是客户端,我不需要做授权服务器端吗?由于我没有实现标准的用户名/密码登录,只是使用Facebook登录,为了授权我不应该将facebook中的cookie中的访问令牌与我存储在数据库中的访问令牌进行比较,以确保用户是正确的用户而不是,例如,试图模仿拥有更高权限的人? – OpticalDelusion

+0

如果它在您的网站上,即使用户登录,访问令牌也可能过期 – ParparDromi

+0

处理过期的访问令牌与我当前的问题无关。我想确保用户具有某些权限,例如作为管理员,以执行特定操作。由于这些权限存储在数据库中,我必须检查数据库。 – OpticalDelusion