繁体   English   中英

ASP.Net安全-通过第三方请求参数对测试用户进行身份验证

[英]ASP.Net Security - Test User is Authenticated via 3rd party request parameters

我有一个不理想的应用程序,而无需花费很多时间。

第三方应用程序需要向页面请求,该页面将返回数据。 因为我启用了表单身份验证,所以此请求总是最终被发送到登录页面。 因此,我对其进行了设置,以使所有用户即使未登录也可以看到此页面。我要在页面加载或类似操作中执行的操作是检查querystring参数,第三方应用程序可以发送该查询字符串参数,并针对FormsAuthentication对其进行验证。

当此第三方应用程序发出请求时,用户已经登录,因此我想知道是否可以针对当前登录的用户检查某些内容,以查看其是否与第三方请求相匹配?

我还需要做的是将该信息从登录用户发送到第三方应用程序,以便在发出请求时与登录用户匹配。

我可能对此表示反对,但无论如何我都会回答,因为如果我的一位同事问我这个问题,我会读给他们骚动行为。 (由于您对系统或数据的安全性不承担任何责任,因此我不会读您的防暴行为。)

我从你的第一句话中看到,你意识到这可能不是最好的主意,因为它是一个“不理想的”应用程序。

我知道我要提出的建议将导致重复的代码并增加日常维护工作,但是在平衡身份验证机制与减少身份验证机制或篡改众所周知的可信赖机制以削弱该机制之间取得平衡时,允许另一个应用程序使用“后门”(这实际上是您在这里所做的事情-为该另一个应用程序创建后门,但尝试将querystring参数用作登录机制的一部分)有更多的代码和需要维护的两个弊端。

那么...您是否考虑过,并且有可能为该其他应用设置另一种方法来获取数据吗? 您说它只是在获取数据,所以为什么不拥有一个单独的Web服务项目或其他合适的项目。 甚至另一个网站应用程序也可以更好地解决您的建议。

即使这些数据不是您所谓的“敏感”数据,我仍然认为尝试在后门中构建不是一个好主意。 在当前的应用程序上,这可能不是一个关键问题,但不是为了安全而编码是一种习惯,一旦在一个区域中进行了编码,您就更有可能在其他地方承担不必要的风险。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM