.net 在查询字符串中传递加密的ID
我正在开发一个.Net应用程序,它有效地包含新闻文章,其中一些是公开的,有些只有在您登录时才可用 每篇文章的URL都需要以某种方式包含文章ID,到目前为止,我一直在使用AES加密文章ID,使用用户ID作为“共享机密”,使用8位字符串作为salt e、 g./article.aspx?id=EVEAAAAACTP2IEC7LKYJSU6382RYL4K571L5/PQrJYY1JJfeq4F 问题是,如果用户在登录时查看文章,他们将无法复制URL并将其发送给其他任何人,因为它无法与其他用户的ID或未登录的用户一起使用 当需要在已知/未知用户之间共享ID时,在查询字符串(或其他任何地方)中包含ID的正确方法是什么.net 在查询字符串中传递加密的ID,.net,url,aes,.net,Url,Aes,我正在开发一个.Net应用程序,它有效地包含新闻文章,其中一些是公开的,有些只有在您登录时才可用 每篇文章的URL都需要以某种方式包含文章ID,到目前为止,我一直在使用AES加密文章ID,使用用户ID作为“共享机密”,使用8位字符串作为salt e、 g./article.aspx?id=EVEAAAAACTP2IEC7LKYJSU6382RYL4K571L5/PQrJYY1JJfeq4F 问题是,如果用户在登录时查看文章,他们将无法复制URL并将其发送给其他任何人,因为它无法与其他用户的ID或
谢谢。一种常见的方法是使用一个“链接”或“共享”按钮来生成一个链接,以便有人可以通过电子邮件发送。将查询字符串上的id以明文形式传递,并让web服务器检查客户端是否有足够的凭据来阅读该文章,并做出适当的反应,这样会更安全吗?它甚至可以返回相关的HTTP状态码(401)以指示您需要登录,或者返回403以指示您无法看到它。为什么必须对文章ID进行加密?我假设您可以跟踪用户是否通过会话或类似的方式登录。只需检查是否允许用户在服务器端访问该文章,并在URL中使用该文章的普通ID。是否有具体原因使用加密文章ID而不是普通文章ID,并结合标准访问控制机制(检查用户是否登录并具有查看权限)?我想这只是公开数据库ID的一个普遍问题-如果网站遭到黑客攻击,这将非常危险。我认为这是最好的做法?这个网站为每个问题(以及答案和用户)公开一个id。