【问题标题】:SQL Server Integrated Security from an Azure Web SiteAzure 网站中的 SQL Server 集成安全性
【发布时间】:2015-05-06 13:45:55
【问题描述】:

在 IIS 上运行 ASP.Net 网站时,我可以在应用程序池设置的上下文中指定该网站运行的 Active Directory (AD) 用户名​​。然后我可以使用Integrated Security = true 创建一个连接字符串来访问我的数据库。然后可以根据该 AD 用户保护数据库资源。

在将网站连接到托管 SQL 数据库的 VM 时,这是否可以在 Windows Azure 中实现?

  • 首先,似乎无法指定网站的虚拟网络,所以我不确定如何指定连接字符串。我希望我不需要将 SQL Server 的端口 (1433) 暴露给外界,因此只有网站可以访问它。

  • 其次,我看不到如何指定网站的用户上下文,以便将其传递给 SQL Server。我知道 Azure 有一个 Active Directory,但我在 Azure 门户中看不到任何选项来以特定用户身份运行网站。

【问题讨论】:

    标签: sql-server azure-sql-database connection-string azure-web-app-service azure-active-directory


    【解决方案1】:

    要回答您问题的第一部分,您只能在预览门户中将您的 Azure Web 应用连接到虚拟网络。如果您转到 Web 应用程序的主要属性“刀片”的最底部,则有一个“网络”部分可让您选择 vnet。

    第二部分 - 由于缺乏对 Azure Web 应用程序的应用程序池设置的控制,我认为没有办法做到这一点。

    Web 应用程序中的每个应用程序都作为称为“应用程序池标识”的随机唯一低特权工作进程标识运行,此处进一步描述:http://www.iis.net/learn/manage/configuring-security/application-pool-identities

    (来自:http://azure.microsoft.com/en-us/documentation/articles/web-sites-available-operating-system-functionality/

    Sql 身份验证将在这种情况下工作。

    如果您将网站托管在 Azure 之外,这绝对是可能的 - 我们有一个 TFS 构建服务器,它使用 Windows 身份验证在本地托管,以通过 vnet 将数据库项目构建发布到 Azure 中的 SQL Server VM。

    【讨论】:

      猜你喜欢
      • 2012-05-31
      • 1970-01-01
      • 2013-03-04
      • 1970-01-01
      • 1970-01-01
      • 2020-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多