模拟登录/登录使用Symfony/sfDoctrineGuardPlugin

问题描述:

在用户在另一个应用程序(如oAuth或自定义安全实现)上进行身份验证的情况下,我们如何模拟登录?模拟登录/登录使用Symfony/sfDoctrineGuardPlugin

我们打算实现的是: - 使用用户标识键检查该用户是否存在 - 如果用户存在,设置用户 会话 - 基本上,设置属性持有者 - 分配用户对象,以便它通过getUser()方法可用 因此,我们正在寻求以编程方式登录!

任何光线如何以最简单的方式做到这一点?使用sfDoctrineGuardPlugin

+0

您是否正在尝试创建单一登录系统?如果是,请搜索Google搜索SSO symfony。 – greg0ire 2010-09-14 16:25:21

+0

是的,有点,但更多的是向oAuth,而不是LDAP或NTLM。但更符合旁路卫士插件... – Prasad 2010-09-14 17:03:45

如果,我会做一些事情,如:

  1. 重定向用户第3部分的Oauth提供商
  2. 成功时,用户返回到您,请创建这些新sfGuardUser对象,或检索(您可能需要调整架构以在某处存储额外的oAuth数据)。
  3. 调用myUser() - > signIn($ user),其中$ user在之前检索到的sfGuardUser对象中 - 例如:我在注册操作中使用此注册操作来注册人后:$ this-> getUser() - > signin ($用户);
+0

很酷..迫不及待地尝试这个!我希望signin方法在基类中实现!会让你知道..谢谢一吨! – Prasad 2010-09-15 17:16:00