如何通过组织帐户或活动目录访问 Azure 服务器

How to acess Azure Server via organizational account or active directory

目标

我希望用户使用他们的组织帐户访问我们的 Azure 服务器。理想情况下,防火墙会根据用户名而不是因旅行而不断变化的 IP 地址来验证它们。


背景

我们的 Azure 服务器托管了多个云数据库。这些数据库由我们的内部程序使用,这些程序可以帮助我们的销售、工程师等。


问题

目前我们有一个防火墙,必须指定 IP 才能让用户访问。问题是我们可能有几个销售人员出差,这使得他们的 IP 发生变化,他们收到以下错误:


用户分别以 CONTOSO\userName 身份登录 Windows。 Azure 有没有办法验证我们的 Active Directory 并查看当前用户名是否是应该有权访问我们服务器的合法用户?

以下假设您使用的是安装了 SQL 服务器的虚拟机。如果您使用的是 SQL Azure (PaaS),请参阅最后一段。

如果您在本地和 Azure(站点到站点 VPN)之间或客户端计算机和 Azure(点到站点 VPN)之间建立 VPN,客户端的源 IP 地址将是已知的,然后它将很容易限制那些在 NSG 或防火墙中。

无论如何,对于能够使用集成 Windows 身份验证 (contoso\user) 向 SQL 进行身份验证的用户,SQL 服务器 VM 必须属于 Contoso Active Directory 域,或 Contoso 信任的域。

因此,如果您将该 Azure VM 加入 Contoso 域,理想情况下 Contoso 的域控制器必须在 Azure 中可用。该域控制器可以通过 S2S VPN 与本地域控制器通信。或者,您可以在 Azure 中配置一个新域并将 SQL 服务器加入该新域,并在该新域和 Contoso 之间建立信任关系 - 在这种情况下您还需要一个 S2S VPN。

但即使您已将 VM 加入域后,(远程)用户也必须建立到 Azure 的 VPN 连接才能使用 Windows 身份验证(尝试使用Windows 直接在 internet 中进行身份验证。

您还可以评估 Azure Active Directory Domain Services,它可以在这种情况下提供帮助,但有其他要求(例如使用 ADConnect 将用户同步到 Azure AD)。

您还可以评估 SQL Azure (PaaS),supports Azure AD authentication(但同样,您需要将用户与 ADConnect 同步)。