将elgg与现有的基于身份验证的应用程序集成

时间:2013-09-05 05:49:10

标签: php authentication elgg bridge

我有我现有的Web应用程序,用户可以在其中注册/登录并访问其详细信息。现在我想将elgg与我的应用程序集成。

当用户登录我的系统时,会有菜单可用,如“elgg”,当用户点击时,他们可以看到elgg社区,但无需登录。

他们可以通过我现有的应用程序进行身份验证。

请帮帮我。

2 个答案:

答案 0 :(得分:1)

您可以获取用户的用户名和密码,并使用以下代码直接在ELGG中进行身份验证并使用它的功能。

//now authenticate user if not logged in
if(true===elgg_authenticate($SESSION['username'], $token_password)) {

    $user = get_user_by_username($SESSION['username']);

    try {
         login($user, $persistent = false);
         system_message(elgg_echo('loginok'));

         //if admin then redirect to administration
         if(elgg_is_admin_logged_in()) {
              forward('admin');
         } else {
              forward('dashboard');
         }
    }catch (LoginException $e) {
         register_error($e->getMessage());
         //forward(REFERER);
    }
}

答案 1 :(得分:0)

您可以为Elgg编写自定义PAM处理程序,以处理集成。请参阅:http://docs.elgg.org/wiki/Engine/Authentication

除此之外,您可能希望保持帐户同步。看看create/update/delete user events