如何使用 ASP.NET MVC 允许对 rss feed 进行授权?
-
08-07-2019 - |
题
我们的商店正在将内部项目管理应用程序从 ASP.NET Web Forms 转换为 ASP.NET MVC。
我想为我们的客户提供有关他们当前未决问题的 RSS 提要...但我想通过某种类型的授权来做到这一点,例如登录名和密码。
是否可以使用 ASP.NET MVC 实现这一点,还是应该通过 WCF 等其他服务来完成?示例代码是 非常感激.
解决方案
我不确定最好的方法,但可以想到一些,但没有一个是超级好的。
使用具有基本安全性的 IIS WindowsAuthentication 并实现验证方法,然后使用授权过滤器标记 RSS 操作。如果他们使用不允许 http 身份验证的 RSS feeder,您仍然应该能够这样做 http://用户名:密码@mysite.com/controller/action/rss.
为每个客户生成一个令牌并将其放置在 url 的一部分中: http://mysite.com/controller/action/rss/{令牌}。这不太好。
将用户名/密码作为路由的一部分: http://mysite.com/controller/action/rss/{用户名密码} ...但这是非常可怕的。
所有这些都有点糟糕,因为密码(或令牌)是 url 可见的。如果是 https 而不是 http,也许这被认为是可以的。我认为第一个选项 + https 很常见?
其他提示
如果私人订阅源是RSS规范的一部分,那么你应该在那里寻找RSS auth的机制。
我之前为一个项目考虑了这个问题,并得出结论认为安全的RSS永远不会有效,因为没有足够的客户(例如谷歌阅读器)支持它。
抱歉,没有完整的答案,但认为这可能会有所帮助。
不隶属于 StackOverflow