【问题标题】:Connecting to SQL Azure database from client applications从客户端应用程序连接到 SQL Azure 数据库
【发布时间】:2015-08-17 19:31:14
【问题描述】:

我有一堆小型桌面应用程序,我有一个简单的数据库来保存用户数据(谁使用哪个应用程序和哪个版本)等。

我希望应用程序在启动时连接到 Azure SQL 服务器并更新数据库记录。我的应用程序中有硬编码的 ADO.NET 连接字符串。 它在我的家庭网络和公司访客网络上运行良好 - 但是,公司网络禁用了一些端口,其中显然包括端口 1433。根据 Microsoft 故障排除指南,我尝试了 telnet,但失败了。

C:\Users\xxx>telnet 65.55.74.144 1433 连接到 65.55.74.144...无法在端口 143 上打开与主机的连接 : 连接失败

我无法通过我的应用程序或 Visual Studio 中的 SQL Server 资源管理器进行连接。 所以,问题是 - 我怎样才能解决这个问题?企业 IT 会因为我的要求而解锁一个端口是非常值得怀疑的,而且我希望它尽可能简单、低调和独立。或者我的方法从一开始就不正确,我应该做不同的事情?

干杯 巴特克

【问题讨论】:

    标签: c# sql-server azure


    【解决方案1】:

    你不能。

    让您的桌面应用程序改为通过 HTTP/HTTPS 与 Web 服务通信。除此之外,这还将允许更受控制的访问(现在任何人都可以连接到您的数据库并修改数据,因为您的访问凭据已与您的应用公开共享)。

    使用 we 服务的一个副作用是 80/443 几乎总是在所有公司防火墙中打开。

    【讨论】:

    • 太好了,非常感谢 - 我觉得连接字符串对硬编码来说不是一个安全的东西:) 你能否指出任何描述你所说的方法的资源? (我发现的 Microsoft Azure 指南显示了我采用的方法)
    • 不容易,我们正在讨论一个完整的应用程序重写。这应该可以帮助您入门:Creating an OData API for StackOverflow including XML and JSON in 30 minutes
    • 嗯,不确定我是否理解正确-因此,从安全角度来看,直接连接不仅不是最好的,而且在端口 1433 被阻塞时也经常无法工作(而且经常被阻塞)?
    猜你喜欢
    • 1970-01-01
    • 2019-06-22
    • 1970-01-01
    • 2020-12-14
    • 2018-03-23
    • 2019-10-03
    • 1970-01-01
    • 1970-01-01
    • 2021-07-24
    相关资源
    最近更新 更多