feat(security): 新增网站安全扩展模块并支持修改手机脱敏验证

This commit is contained in:
2026-10-06 09:26:55 +08:00
parent 224f86ec08
commit af72364078
30 changed files with 1389 additions and 73 deletions
+13
View File
@@ -48,6 +48,19 @@ trait OrderRepositoryCore {
public function create(array $data): string {
global $wpdb;
// [防刷机制]下单限制(后台「扩展&增强 → 网站安全」),管理员不受限,未登录按 IP。
if (class_exists('\AKSRT\Extensions\SecurityHardening') && !current_user_can('manage_options')) {
$security = \AKSRT\Settings\ExtensionRuntime::get_security_settings();
$order_user_id = (int) ($data['user_id'] ?? 0);
$brush_subject = $order_user_id > 0
? (string) $order_user_id
: (function_exists('aksrt_get_client_ip') ? aksrt_get_client_ip() : (string) ($_SERVER['REMOTE_ADDR'] ?? ''));
$brush = \AKSRT\Extensions\SecurityHardening::brush_allow('order', $brush_subject, (int) $security['security_brush_order_10min'], (int) $security['security_brush_order_day']);
if ($brush !== true) {
return '';
}
}
// 自带订单号先过形态校验:只接受分配器能产出的「全数字、20 或 22 位」。
// 不合规的一律弃用并回落到分配器(WP_DEBUG 下留痕),既不把非法长度写进库,
// 也不因此抛错中断调用方。