首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在没有密码的情况下使用链接安全地登录用户?

在没有密码的情况下使用链接安全地登录用户?
EN

WordPress Development用户
提问于 2018-05-25 01:47:41
回答 1查看 407关注 0票数 0

我想使用来自我的应用程序的链接登录用户在他们的浏览器中Wordpress,但我担心这是否可以安全地完成。

显然,使用任何类型的静态URL模式似乎都是不可能的。我是否可以利用其他方法安全地完成这一任务,而无需花费一周时间来构建自定义机制?

我猜不是,但在重新发明方向盘之前,我想检查一下。非常感谢。

EN

回答 1

WordPress Development用户

发布于 2018-05-25 04:47:30

可以,停那儿吧。但是,您需要知道userid或用户名。

用其中的任何一个作为数据属性创建一个链接,并使用它进行ajax调用。成功后,您可以重新加载页面,您的用户将被登录。

如果你知道用户身份..。

代码语言:javascript
运行
复制
function wpse_304392_login_by_id() {

    $user_id = $_POST['user_id'];

    $user = get_user_by( 'id', $user_id ); 
    if( $user ) {
        wp_set_current_user( $user_id, $user->user_login );
        wp_set_auth_cookie( $user_id );
        do_action( 'wp_login', $user->user_login );
    }

    wp_die(); //Essential for AJAX calls
}

如果你知道用户名..。

代码语言:javascript
运行
复制
function wpse_304392_login_by_username() {

    $username = $_POST['username'];
    $user = get_user_by( 'login', username ); 
    $user_id = $user->ID;

    if( $user ) {
        wp_set_current_user( $user_id, $username );
        wp_set_auth_cookie( $user_id );
        do_action( 'wp_login', $username );
    }

    wp_die(); //Essential for AJAX calls
}

别忘了做一次即时检查以确保安全。

票数 -1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/304392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档