sql-server - Azure VM 上的 SQL Server:我的应用程序如何连接?
问题描述
我有一个用 VB 编写的应用程序,用于连接 Microsoft SQL Server,该服务器位于域中的 VM 上,使用 Windows 身份验证(本地域)。
但是,我已将我的数据库移动到放置在 Azure VM 上的 SQL Server。
我的问题是我不知道如何使用 Windows 身份验证(或以某种方式“询问”Active Directory 关于尝试连接的用户)。
我见过 SQL Server 的模式:
- 活动目录 - 密码
- 活动目录 - 集成
但我不明白如何使用它们。我是否必须在 2 个域(本地、Azure)之间建立信任关系?
有人可以帮忙吗?
解决方案
我已将我的数据库移至位于 Azure VM 上的 SQL Server。
Azure VM 上的 SQL 与您可能在本地运行的产品相同,并且支持 SQL 身份验证和 Windows 集成身份验证。Azure SQL 数据库和 Azure SQL 数据仓库支持的 Azure Active Directory 身份验证方法不适用于在 Azure VM 中运行的 SQL Server。看:
Azure Active Directory 身份验证是一种使用 Azure Active Directory (Azure AD) 中的身份连接到 Azure SQL 数据库和 SQL 数据仓库的机制。
请参阅使用 Azure Active Directory 身份验证对 SQL 数据库、托管实例或 SQL 数据仓库进行身份验证
对于在 Azure VM 中运行的 SQL Server,您可以使用 SQL 身份验证或 Windows 身份验证l,如此处所述Authentication in SQL Server
您可以使用本地帐户(在 VM 上创建)在 VM 中使用 Windows 身份验证,也可以将单独 VM 上的域控制器部署到 VM VNET 中并使用域中的身份。部署到 Azure VNET 中的域控制器可以是隔离域,也可以是本地域的副本。如果要将本地域的副本部署到 Azure VNET,还需要使用站点到站点 VPN 或 ExpressRoute,如在 Azure 虚拟机上部署 Windows Server Active Directory 的指南中所述
推荐阅读
- python - statsmodels 中的互相关图
- python - jenkins 运行 python 代码得到 ModuleNotFoundError: No module named 'selenium'
- angular - Firebase auth setPersistance({type: 'SESSION'}) throws INTERNAL ASSERTION FAILED: Expected a class definition
- r - asciiSetupReader 与具有 RECORDS 功能的 .sps 文件或具有 n= 功能的 .sas 文件有关的问题
- django - 如何制作可以处理创建 API 端点的嵌套发布数据的自定义序列化程序?
- c# - 具有多个依赖项的 C# MySql Workbench Db DELETE 查询Parameters.AddWithValue?我知道这是错误的 我已经尝试了多种查询类型
- wordpress - 如何从具有子组的高级自定义字段中获取数据
- cpu-architecture - D-latch 时间图与预设和清晰?
- python - 为什么我的图像在 OpenCV Python 中显示为灰色?
- r - 以更高效的方式分配缺失值