网站安全函数是否能防止user表被非法访问?如何配置权限?
安全防护体系
php
// 1. 预处理语句防SQL注入 $stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id"); $stmt->bindParam(':id', $id, PDO::PARAM_INT); // 2. 密码安全存储 $hashed_pw = password_hash($password, PDO::PARAM_INT); // 3. 输出过滤防XSS echo htmlspecialchars($user_input, ENT_QUOTES);
数据库权限配置(MySQL示例)
sql
-- 创建专用数据库用户 CREATE USER 'web_user'@'localhost' IDENTIFIED BY 'Complex@Password123'; GRANT SELECT, UPDATE ON db.users TO 'web_user'@'localhost'; REVOKE DROP, ALTER ON db.* FROM 'web_user'@'localhost';
防护等级对比表
措施 | 防护类型 | 有效性 | 实现成本 |
---|---|---|---|
预处理语句 | SQL注入 | ★★★★★ | 低 |
最小权限原则 | 越权访问 | ★★★★☆ | 中 |
输入验证 | XSS/CSRF | ★★★☆☆ | 高 |
更新时间:2025-06-02 14:27:15