Azure SQL Database是否支持Windows身份验证及配置方法问询
1. Azure SQL Database是否支持Windows身份验证?
咱得先把这个问题说透:Azure SQL Database不支持传统的本地Windows账户直接身份验证,但它支持集成Azure AD的Windows身份验证——简单说,如果你的Windows账户是Azure Active Directory(Azure AD)的成员(比如通过AD Connect同步过来的本地域账户,或者直接在Azure AD中创建的账户),那你就能用这个Windows账户来登录Azure SQL Database。
直白点讲:纯本地的Windows账户(没和Azure AD关联的)没法直接用,但只要你的Windows账户属于Azure AD体系,就可以实现类似Windows身份验证的无缝登录体验。
2. 如何为Azure SQL Database配置Windows身份验证登录?
下面是一步步的实操配置流程:
前提准备:设置Azure AD服务器管理员
首先得确保你的Azure SQL Database服务器已经关联了Azure AD,并且设置了Azure AD管理员。这是基础操作,没有AD管理员的话,没法创建AD相关的登录。你可以在Azure门户的SQL服务器页面的「Azure Active Directory」选项卡中完成设置,选择一个Azure AD用户/组作为服务器管理员。确认目标Windows账户在Azure AD中存在
如果是本地域的Windows账户,要确保已经通过AD Connect同步到Azure AD;如果是Azure AD原生的账户,直接确认它在Azure AD中正常存在即可。在Azure SQL Database中创建登录和用户
用你的Azure AD服务器管理员身份连接到SQL服务器的master数据库,执行以下T-SQL语句创建登录:CREATE LOGIN [你的Windows账户名@域名.com] FROM EXTERNAL PROVIDER;然后切换到你要配置的目标数据库,创建对应的用户:
CREATE USER [你的Windows账户名@域名.com] FROM LOGIN [你的Windows账户名@域名.com];分配数据库权限
给创建的用户分配合适的数据库权限,比如只读权限:ALTER ROLE db_datareader ADD MEMBER [你的Windows账户名@域名.com];或者读写权限:
ALTER ROLE db_datawriter ADD MEMBER [你的Windows账户名@域名.com];测试登录
打开SQL Server Management Studio(SSMS),在连接对话框中选择「Azure Active Directory - Integrated」身份验证方式,输入SQL服务器名称后直接点击连接——这时候会自动用你当前登录的Windows账户(已关联Azure AD)验证身份,配置正确的话就能成功连接到数据库。
内容的提问来源于stack exchange,提问作者Siddhu Kanap

