URL内的电子邮件地址

URL内的电子邮件地址,url,email-address,Url,Email Address,在URL中使用电子邮件地址安全吗? 我的意思是,假设一个web应用程序有一个注册用户“Bob”,Bob通过使用他的电子邮件=>Bob@hisemail.com。现在,您认为应用程序在//application.com上接受和处理GET请求安全吗/Bob@hisemail.com和每个用户的相同类型的URL?在这种情况下,电子邮件地址可以与请求参数一起用作GET方法,例如: //application.com/file\u name?电子邮件=Bob@hisemail.com 此选项更安全,可能会

在URL中使用电子邮件地址安全吗?
我的意思是,假设一个web应用程序有一个注册用户“Bob”,Bob通过使用他的电子邮件=>
Bob@hisemail.com
。现在,您认为应用程序在
//application.com上接受和处理GET请求安全吗/Bob@hisemail.com
和每个用户的相同类型的URL?

在这种情况下,电子邮件地址可以与请求参数一起用作GET方法,例如:

//application.com/file\u name?电子邮件=Bob@hisemail.com


此选项更安全,可能会被使用

基本上这取决于你是爱还是恨你的用户。当你按照你的建议去做的时候,这些URL会在网页上的HTML页面上传播。不一定局限于你自己的网站,因为人们可能会链接到它

当你的页面获得足够的吸引力变得重要时,垃圾邮件机器人的爬虫作者会注意到并向他们的爬虫添加规则,以从URL中提取电子邮件地址。它甚至可能没有必要,因为一些愚蠢的正则表达式可能已经在没有自适应的情况下找到了电子邮件

然后,你的用户的电子邮件地址会出现在垃圾邮件发送者的名单上,委婉地说,会得到“不想要的广告”。(这些电子邮件列表的价值也将相当高,因为它们被“验证”为真实的现有列表。)

你在这里做的是泄露你的用户信任你的私人身份。永远不要让它公开,除非你的用户告诉你


从技术角度来看,你可以试试看。

我认为这不是一个好主意。首先,电子邮件包含需要URL编码的特殊字符,这样它们就不会与系统字符混淆(例如,对于FTP服务器,您可以这样传递用户名)


另外,我不希望从用户的角度来看它,因为在这种情况下,我的电子邮件将保留在浏览器历史记录中

视情况而定。

虽然普通电子邮件地址问题不大,但电子邮件地址可能包含反斜杠\和引号等字符”

abc.“defghi\\\”。xyz@example.com
“abcdefghixyz”@example.com
是有效的电子邮件地址

只要您在使用输入(例如从数据库中查找实体)之前正确地验证输入并对其进行Santize,您的应用程序将是安全的

您还将用户的电子邮件地址发送到该词,可能会将其交给垃圾邮件发送者

另一个问题是,如果您的用户更改了他们的电子邮件地址,那么该实体将无法访问


一个更好的方法是使用一个唯一的索引,也许是与用户名结合使用。

我不是在问如何做,而是谢谢:)我更喜欢…/电子邮件格式,因为它看起来更干净。问题是从长远来看会有什么后果?我想到垃圾邮件、安全问题之类的词,但我想听听你的一些意见更有经验的人。当我们使用重写模式时,因此不希望在url中使用特殊字符,因此作为您要使用的表单,我认为它没有在一个可靠编码的应用程序中正确录制或清理,第一点是无效的。(而且,
@
在第一个
//code>之后不需要编码)第二个答案是正确的。你的答案似乎合乎逻辑而且非常正确。但整个事情的开始是因为我爱我的用户,我不想给他们像//webApp/12345或//webApp/users/12345这样的URL。没有人喜欢或记得ID:p这是真的,我+1回答这个问题,因为这是一个好问题。但问题仍然存在,尤其是e邮件地址实际上是相当私人的一部分信息。这就是为什么现在许多服务都要求电子邮件和用户名,允许您同时登录,但只显示后者。通过查看Facebook,您可以看到电子邮件是多么明智。是的,这是一个隐私20世纪的网站。如果您尝试发送
user@facebook.com
,他们的邮件服务r检查您的邮件地址是否可以这样做,如果您不是邮件所有者的朋友,则拒绝该邮件。答案是假设所述URL是可爬网的(显示在公共html文件上)。我仍然爱我的用户,并且有一个API端点可以在路径中接收电子邮件。这一技巧也可以反向使用。任何恶意参与者都可以用几美元获得数百万个现有电子邮件地址的列表。然后,他可以开始用所述列表查询您的服务,以找到那些能够给出肯定响应的地址。突然之间他有一个电子邮件列表,在你的网站上也有一个帐户。