Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wordpress-seo domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vinascript/html/wp-includes/functions.php on line 6114
Vô hiệu hóa WordPress REST API (wp-json) để tăng bảo mật cho WordPress - VinaScript

Latest Post

Triển khai dự án PHP, Mysql với Nginx trên Docker Tìm hiểu về HTML – Ưu điểm, nhược điểm và cách hoạt động của HTML

Như đã trình bày trong bài giới thiệu về WordPress REST API, ta đã thấy rõ những lợi ích mà API này mang lại trong việc quản lý WordPress. Tuy nhiên, cùng với những lợi ích đó, cũng đi kèm những rủi ro về bảo mật, như khả năng dễ dàng thu thập dữ liệu bằng cách quét, hoặc nguy cơ bị tấn công Brute Force để đánh cắp mật khẩu.

Do đó, nếu bạn không cần sử dụng WordPress REST API, có lý thuyết bạn nên tắt nó. Có hai cách để thực hiện điều này:

1. Vô hiệu hóa sử dụng plugin

Một số plugin mà bạn có thể tham khảo:

2. Vô hiệu hóa sử dụng code

Rất đơn giản là sử dụng đoạn code dưới đây đặt vào file functions.php của theme mà bạn đang sử dụng:

add_filter( 'rest_authentication_errors', function( $result ) {
    if ( ! empty( $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;
});

Mã nguồn ở trên đòi hỏi rằng mọi yêu cầu đến REST API Endpoint phải được xác thực đăng nhập trước khi có thể truy cập dữ liệu. Việc này được khuyến nghị bởi WordPress để tránh vô hiệu hóa hoàn toàn API của WordPress, điều này có thể gây ảnh hưởng đến các tính năng trong WP-Admin.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *