WordPress 默认开放的一些用户接口若未经适当保护,可能会使得用户信息面临未经授权的访问风险,进而构成安全隐患。
WordPress有哪些默认的api接口?
1. Posts(文章) | |
获取所有文章 | /wp/v2/posts |
获取特定文章 | /wp/v2/posts/{id} |
创建文章(需要认证) | /wp/v2/posts |
更新文章(需要认证) | /wp/v2/posts/{id} |
删除文章(需要认证) | /wp/v2/posts/{id} |
2. Pages(页面) | |
获取所有页面 | /wp/v2/pages |
获取特定页面 | /wp/v2/pages/{id} |
创建页面(需要认证) | /wp/v2/pages |
更新页面(需要认证) | /wp/v2/pages/{id} |
删除页面(需要认证) | /wp/v2/pages/{id} |
3. Media(媒体) | |
获取所有媒体文件 | /wp/v2/media |
获取特定媒体文件 | /wp/v2/media/{id} |
上传媒体文件 | /wp/v2/media |
更新媒体文件 | /wp/v2/media/{id} |
删除媒体文件 | /wp/v2/media/{id} |
4. Users(用户) | |
获取所有用户 | /wp/v2/users |
获取特定用户 | /wp/v2/users/{id} |
创建用户(需要认证) | /wp/v2/users |
更新用户(需要认证) | /wp/v2/users/{id} |
删除用户(需要认证) | /wp/v2/users/{id} |
5. Comments(评论) | |
获取所有评论 | /wp/v2/comments |
获取特定评论 | /wp/v2/comments/{id} |
创建评论 | /wp/v2/comments |
更新评论(需要认证) | /wp/v2/comments/{id} |
删除评论(需要认证) | /wp/v2/comments/{id} |
6. Taxonomies(分类法) | |
获取所有分类法 | /wp/v2/taxonomies |
获取特定分类法 | /wp/v2/taxonomies/{taxonomy} |
7. Categories(分类) | |
获取所有分类 | /wp/v2/categories |
获取特定分类 | /wp/v2/categories/{id} |
创建分类(需要认证) | /wp/v2/categories |
更新分类(需要认证) | /wp/v2/categories/{id} |
删除分类(需要认证) | /wp/v2/categories/{id} |
8. Tags(标签) | |
获取所有标签 | /wp/v2/tags |
获取特定标签 | /wp/v2/tags/{id} |
创建标签(需要认证) | /wp/v2/tags |
更新标签(需要认证) | /wp/v2/tags/{id} |
删除标签(需要认证) | /wp/v2/tags/{id} |
9. Settings(设置) | |
获取站点设置(需要认证) | /wp/v2/settings |
更新站点设置(需要认证) | /wp/v2/settings |
如何禁用这样的接口?
在您的主题文件夹中找到functions.php文件中,在最底部加上代码,如文提供,根据需要进行测试验证。
/**用户枚举**/
add_filter('rest_endpoints', function($endpoints){
if(isset($endpoints['/wp/v2/users'])){
unset($endpoints['/wp/v2/users']);
}
if(isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])){
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
});
// 屏蔽 REST API 用户接口
add_filter('rest_endpoints', function($endpoints){
if(isset($endpoints['/wp/v2/users'])){
unset($endpoints['/wp/v2/users']);
}
if(isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])){
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
});
// 禁用wp-sitemap所有用户
add_filter( 'wp_sitemaps_add_provider', function ( $provider, $name ) {
if ( 'users' === $name ) {
return false;
}
return $provider;
}, 10, 2 );
免责声明:
1.本站所有内容只做学习和交流使用。 版权归原作者所有。
2.保证站内提供的所有可下载源码资源(软件等)都是按“原样”提供,本站未做过任何改动;但本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。
3.本站部分内容均收集于网络!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。请联系站长邮箱:admin#ibian.online(#换成@)处理!
1.本站所有内容只做学习和交流使用。 版权归原作者所有。
2.保证站内提供的所有可下载源码资源(软件等)都是按“原样”提供,本站未做过任何改动;但本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。
3.本站部分内容均收集于网络!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。请联系站长邮箱:admin#ibian.online(#换成@)处理!