信任$ _SERVER ['REMOTE_ADDR']是否安全?

信任安全$_SERVER['REMOTE_ADDR']吗?是否可以通过更改请求标头或类似的内容来代替?


这样写安全吗?


if ($_SERVER['REMOTE_ADDR'] == '222.222.222.222') { // my ip address

    $grant_all_admin_rights = true;

}


万千封印
浏览 899回答 3
3回答

神不在的星期二

是的,这很安全。它是TCP连接的源IP,不能通过更改HTTP标头代替。您可能要担心的一种情况是,如果您在反向代理后面,则REMOTE_ADDR将始终是代理服务器的IP,而用户IP将在HTTP标头中提供(例如X-Forwarded-For)。但是对于正常使用情况,读取REMOTE_ADDR是可以的。

青春有我

如上所述,这不是绝对安全的。但这并不意味着您不应该使用它。考虑将其与其他身份验证方法结合起来,例如检查COOKIE值。
打开App,查看更多内容
随时随地看视频慕课网APP