首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何确保icalendar (.ics)订阅的安全?

如何确保icalendar (.ics)订阅的安全?
EN

Stack Overflow用户
提问于 2014-05-26 01:35:16
回答 2查看 2.8K关注 0票数 6

我有一个多用户网站,并希望为每个用户发布一个单独的icalendar订阅文件(.ics)。

我们的apache服务器被配置为只能通过https提供访问。

我考虑过的一种方法是,当用户第一次请求他们的订阅URL时,生成一个长的随机密钥并将其包含在URL中。然后,该键的散列将存储在数据库中。示例:id/dQXeCgtiOmZ5lAXoedmujiuA47VmCgA5OIfE6vZ8BhJT3Rxh20b9Ci.ics

我们cakephp应用程序中的所有页面都要求用户登录(显然期望登录页面)。我会将ics文件配置为也不要求用户登录,而是只在提供正确的密钥(根据哈希进行测试)时显示。

这种方法有什么缺点吗?

有什么不同的方法我应该使用吗?

我见过一些人的例子,包括订阅URL中的基本身份验证,但这听起来更糟。示例:id

这是在学校环境中部署的,所以iCalendar订阅包含了相当普通的内容,比如课堂时间表和作业截止日期,但我仍然希望它是安全的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-26 02:53:39

在urls中添加未过期的秘密的缺点是它们可能会“泄漏”到其他系统。读取iCalendar提要的任何内容都不会真正认为提要url本身非常敏感,并且这些url可能存储在系统的其他应用程序可能读取的部分中。

iCalendar提要可能被缓存,因此该提要的缓存副本+它们的秘密可能存在于本地浏览器缓存、企业网络缓存和其他中介中。

当用户第一次单击类似的url时,浏览器工具栏可以记录请求并将其发送到外部服务。

只是几个向量而已。使用basic auth并不糟糕,只是不要将其嵌入url中,并要求用户再次键入他们的密码。

但我不能为你决定这是否是一个可以接受的风险。我们确实用秘密网址来做一些事情。

票数 5
EN

Stack Overflow用户

发布于 2022-07-15 14:01:02

我有一个类似的问题,我采取了“秘密在url”的解决方案。它并不是真正的安全,但至少它通过简单地交换url中的用户id来阻止人们猜测其他iCalendar提要。)。

我不知道如何真正保护.ics提要。我还没有遇到一个日历客户端,它允许我为ics订阅输入密码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23861627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档