可以在查询字符串中传递ID吗?

时间:2019-04-03 01:39:11

标签: asp.net query-string

可以在查询字符串中传递ID吗?例如:

  

example.com/viewperson.aspx?personid=22d62e18-2383-42ca-ba6d-a535355b98bb

对于Intranet站点,此更改(风险较小)吗?

如果是公共站点,则假定任何人都可以访问(肩膀服务,浏览器日志记录等)。即使我们使用的是SSL,我仍然假设“不在那儿”。显然,将应用安全性以禁止未经身份验证的用户查看页面。但是还是有风险吗?

使用查询字符串的另一个好处是,可以将一些您想回叫的电话(例如本例中的人员)添加为书签,而不必穿过前门并回头看。 永远不会传递任何有意义的东西,但也许ID足够有意义而不会传递?

当然可以选择使用cookie或会话变量。

1 个答案:

答案 0 :(得分:-1)

假设这些资源是您要保护的,则它没有风险,前提是对ID的资源请求进行了身份验证和授权。意味着您应该验证请求是否来自登录用户,并且该用户有权访问该资源。

因此,如果我属于公司5,则我将无法打开/ companies / 4。

否则,没有问题,并且我没有其他替代方法。 (这意味着您必须以某种方式提供标识符)