gpt4 book ai didi

security - 使用 QueryString 作为调试开关?

转载 作者:行者123 更新时间:2023-12-02 22:13:17 26 4
gpt4 key购买 nike

我今天在 Web 应用程序中重构一些代码,并在所有网页的基类中遇到了类似的内容:

if (Request.QueryString["IgnoreValidation"] != null)
{
if (Request.QueryString["IgnoreValidation"].ToUpper() == "TRUE")
{
SessionData.IgnoreValidation = true;
}
}

对我来说,这似乎是一件非常糟糕的事情™,所以我立即从代码中删除了该标志的所有痕迹。其一,各处散落着几个 if 语句来检查标志的值,导致逻辑困惑且不清晰。其次,我遇到了另一个更危险的标志,名为“IgnoreCreditCardValidation”。你可以猜猜那人做了什么......

然后我开始思考这个问题,并想起了之前工作中的一个类似的例子。在作为“安全身份验证模块”出售的应用程序的代码中,有一个 QueryString 参数用于覆盖默认行为,有效地允许任何了解它的人绕过身份验证。

现在我的问题更多的是确认,这种做法是否像我想象的那样糟糕,或者我只是 react 过度而这种情况很常见?是否存在这样做有正当理由的情况?对我来说,这似乎是懒惰和粗心的可怕结合。

如果这是重复的,请随时为我指出正确的方向。

谢谢!

最佳答案

无论这是否是常见做法,这都是可怕的。 +1 给你以极端偏见的核武器攻击。

关于security - 使用 QueryString 作为调试开关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1229626/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com