如何在HTML电子邮件中添加私有图像链接

如何在HTML电子邮件中添加私有图像链接,html,security,smtp,jwt,html-email,Html,Security,Smtp,Jwt,Html Email,我有一个web服务器,可以访问公共和私人图像。任何人都可以通过url获得公共图像,例如https://example.com/public/images/some-public-image.jpg. 但是对于私有图像,只有图像的所有者可以通过链接访问它们https://example.com/private/images/some-private-image.jpg,请求需要在Cookie中具有经过身份验证的用户的会话id 要在电子邮件内容中添加公共图像,我在电子邮件HTML内容中使用。但无法使

我有一个web服务器,可以访问公共和私人图像。任何人都可以通过url获得公共图像,例如https://example.com/public/images/some-public-image.jpg. 但是对于私有图像,只有图像的所有者可以通过链接访问它们https://example.com/private/images/some-private-image.jpg,请求需要在Cookie中具有经过身份验证的用户的会话id

要在电子邮件内容中添加公共图像,我在电子邮件HTML内容中使用。但无法使用私有链接,例如,因为它需要身份验证

向电子邮件内容中添加私人图像的常见做法是什么

像这样在链接中嵌入JWT令牌可以吗

然后,服务器在返回映像之前检查令牌的有效性


此方法是否存在安全问题?

如果您的令牌仅对该映像有效,并且不能用于其他作用域,例如使用其他API进行身份验证,则使用它不是问题。问题是所有的认证都是基于图像链接的知识。因此,如果使用guid作为名称生成图像,则是相同的

但是,您并不是在识别打开图像的用户,而是在检查是否有人知道该链接。窃取链接的攻击者可以在不知道任何凭据的情况下查看图像,也不进行访问。您确定这是您希望应用程序的行为吗?最好的方法是发送一封没有敏感信息的邮件,并强迫用户点击一个链接来验证他的身份