将url公开给webservice

时间:2010-04-12 13:41:37

标签: c# wcf architecture

在我们的项目中,我们想要查询特定文档或电影的文档管理系统。 dms返回包含文档位置的URL(例如:http://mydomain.myserver1.share/mypdf.pdfhttp://mydomain.myserver2.share/mymovie.avi)。

我们希望将文档公开给互联网用户和内部网用户。请求的文件可能很大(大型视频文件)。

我们的架构就像:

请求如下:webapp1 - > webapp2 - > webapp3 - > dms

响应如下:dms - > webapp3 - > webapp2 - > webapp1

webapp1可能在互联网上。

由于安全问题,我一直在考虑如何从dms中混淆真实网址。我已经看到来自其他webapps的实现,其中pdf URL通过为所请求的文档创建特定于会话和用户的临时文件而被假定。因此其他用户无法轻易猜出其他用户的文档名称。

我的问题:是否有一种模式可以处理向公众公开公司/用户可用数据?

我们的发展是在C#3.5。

1 个答案:

答案 0 :(得分:2)

处理它的最简单方法是创建一个ashx文件(或其他一些创建URL的方式)并让它提供pdf。由于WCF支持REST,您也可以通过它来完成。只需将pdf加载到内存中,然后将字节内容推送到响应流中。

或者,您可能希望查看以下内容:

http://www.microsoft.com/forefront/edgesecurity/isaserver/en/us/

http://www.isapirewrite.com/