从Azure网站访问文件共享

Kas*_*ols 2 asp.net file-sharing azure azure-web-sites

我们有一个Web应用程序,包含三个主要部分:

  1. 运行ASP.NET 4.5网站的Web服务器;
  2. 托管SQL Server 2012的数据库服务器;
  3. 另一台托管后台使用的旧版应用程序的服务器;

部件之间的关系如下:

  • Web应用程序运行时将App Pool Identity设置为名为Foo的本地用户,并使用Entity Framework消耗数据库;

  • 旧版应用程序使用数据库并定期将文件系统中的数据更改导出为XML文件,使用Windows文件共享功能将文件夹共享给本地用户Foo(本地用户具有与Web服务器上相同的密码);

  • Web应用程序监视新数据的文件共享,并导入所有更改(如果有);

现在我们想将此应用程序迁移到Azure.不幸的是,我们必须使用VM for SQL Server,因为我们的旧应用程序数据库使用Azure SQL上不可用的文件流功能.此外,我们需要另一个VM用于遗留应用程序.

目前我最终得到以下结果:

  1. 在Azure上创建了一个新的虚拟网络;

  2. 创建了一个新的Azure网站,并使用Point-To-Site VPN连接将其连接到VNET;

  3. 为SQL Server和传统应用创建了2个VM,并连接到VNET,将网络标记为专用网络,禁用防火墙;

一切正常,除了一件事 - 网站无法访问位于旧版App VM上的文件共享.我试图向所有人启用共享,但无济于事.

所以,我的问题是:是否可以从Azure网站访问文件共享?如果没有,我有什么替代品?

我知道我们可以为网站启动另一个VM然后我没有问题,但我想使用Azure网站来优化成本并使用所有Azure好东西.

Fra*_*ois 5

在编写Azure文件服务时,SMB共享只能从VM,Web和Worker角色访问.您可以使用存储REST.API或客户端库从Azure网站或内部部署访问您的文件.你可以从nuget获得它.

Install-Package WindowsAzure.Storage
Run Code Online (Sandbox Code Playgroud)

我经历了将使用文件的Web应用程序移动到Azure的相同练习. 我做了什么的例子.

  • @DanCsharpster,我最后一次看到他们拒绝了请求。https://feedback.azure.com/forums/169385-web-apps/suggestions/6084609-allow-map-azure-file-share-microsoft-azure-file-s (2认同)