一个架构问题。
我的网站需要允许用户录制视频并将其上传到“网站”。我一直在寻找一点点,似乎我 使用某种媒体服务器来实现这个目标。当我将这个辅助服务器引入系统时(我试图将驻留在该服务器上的Flash应用程序嵌入到网站提供的HTML中),我发现这大大拓宽了安全范围。令我害怕的是攻击者试图自己嵌入Flash应用程序或试图模仿客户端(或者我还没有想到的任何其他内容!)。
因此,我想知道人们如何使用这样的架构保护他们的应用程序。当然,我可以做一下建议的here,现在是一个不错的创可贴,但是域名信息在技术上可能会被客户伪造。
我可以分离出网站的身份验证,为我提供了一个WebServer,一个AuthServer和一个MediaServer,使MediaServer可以单独进行身份验证。让用户登录这两个站点显然是繁重的,并且传递用户的登录信誉并保证所有连接听起来很丑陋并且厌恶最佳实践。
据我所知,我最好的选择是auth服务器创建的某种临时令牌。因此,网站在登录后启动auth服务器以生成令牌,然后该站点可以传递到媒体服务器(作为闪存变量的一部分),并且MediaServer本身可以用来对auth服务器进行双重检查。
我对Red5,Flash和网络安全相对较新,所以我想知道以下听起来是否合理,安全和/或必要。此外,如果有人知道用于这样一个身份验证系统的正确工具,以及是否有一些东西已经在ASP.NET auth中用于此目的。
答案 0 :(得分:1)
您的链接中提供的解决方案......您应该阅读我的第二条评论。 关于虚拟主机的第一个错误!我的评论实际上告诉您(至少一个)解决方案来保护您的应用。
例如,您可以将connect方法中的SESSION_ID传递给Red5。在调用记录或回放方法之前,用户将从另一个webservice调用中获取SESSION_ID。
SESSION_ID甚至可能是某种临时令牌,仅在15分钟内有效,并且仅对该视频只能使用一次。您实施的程度取决于您的机制需要多么安全。
塞巴斯蒂安