Bảo mật REST API trong Wordpress

ARTRU

Có thể tắt REST API không?

Đây cũng chính là vấn đề mà mình suy tư bấy lâu. Sau khi mình tìm hiểu về API thì đã có được câu trả lời.

REST API được tích hợp đầy đủ trong phiên bản WordPress 4.7 (năm 2016). Vì vậy các chức năng Quản trị viên WordPress đang phụ thuộc vào API.

Tuy nhiên, bạn có thể sử dụng bộ lọc để xác thực yêu cầu người dùng API. Điều này ngăn chặn hiệu quả quyền truy cập API từ bên ngoài mà không ảnh hưởng đến tài khoản ADMIN.

Chèn mã php để tắt REST API

Chèn mã vào file functionc.php của theme / child theme hoặc mu-plugins (mình sử dụng mu-plugins làm file cấu hình functions cho website).

Mã PHP:

/** Tắt REST API cho người dùng chưa đăng nhập */
add_filter( 'rest_authentication_errors', function( $result ) {
    if ( true === $result || is_wp_error( $result ) ) {
        return $result;
    }
    if ( ! is_user_logged_in() ) {
        return new WP_Error(
            'rest_not_logged_in',
            __( 'You are not currently logged in.' ),
            array( 'status' => 401 )
        );
    }
    return $result;
});
BÌNH LUẬN

Bài Viết Liên Quan