我们已将Web应用程序部署在Azure App Service上。我们的数据库也位于配置为使用AAD身份验证的Azure上(我们已分配AAD管理员)。
我们正在Web应用程序中使用下面的连接字符串使用下面的连接字符串连接到该服务器和数据库。
数据源= xxxxxxx.database.windows.net;初始目录= xxxxxxx;持久安全信息= False;身份验证=集成Active Directory
请注意:通过本地系统使用时,此连接字符串可以正常工作。但是,当我们在Azure App Service中使用此conn字符串时,出现以下错误:
无法在Active Directory中对用户NT Authority \ Anonymous登录进行身份验证(身份验证= ActiveDirectoryIntegrated)。错误代码0x4BC; 状态10指定的域名格式无效
根据您的描述,我发现您使用了Active Directory集成身份验证。
若要使用集成的Windows身份验证,您域的Active Directory必须与Azure Active Directory联合。您连接到数据库的客户端应用程序(或服务)必须在用户的域凭据下在加入域的计算机上运行
如果将Web应用发布到Azure,则Azure的Web应用服务器将不在您域的Active Directory中。因此,SQL Server将不会通过身份验证。
我建议您可以尝试使用Active Directory密码身份验证代替Active Directory集成身份验证。
如下所示替换连接字符串,使用azure AD用户名和密码。它将运作良好。
Server=tcp:brandotest.database.windows.net,1433;Initial Catalog=bradnotestsql;Persist Security Info=False;User ID={your_username};Password={your_password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Authentication="Active Directory Password";
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句