我正在寻找使用此连接string,但我不知道如何设置:
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;
以前我们的SQLNCLI10连接string使用Uid&Pwd。 我们现在已经移动了服务器并build立了活动目录,寻找一些有关如何在IIS和MSSQL之间configuration安全性的帮助。
在IIS 7.5中,可以在网站的“基本设置”中指定用户帐户,也可以只使用传递身份validation。 我认为如果通过设置,它使用为应用程序池设置的帐户?
默认情况下,应用程序池以ApplicationPoolIdentity身份运行。 只有此应用程序池中的网站才能访问此数据库。 也有多个Web服务器使用共享configuration,每个连接到相同的数据库服务器 (或使用MSSQL数据库镜像镜像的服务器)
当前脚本运行时,这是错误消息(MSSQL在同一个域中的不同服务器上): Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'
我应该创build应用程序池的标识是什么,我应该如何在MSSQL中设置此帐户?
我希望大家都有道理,再次感谢!
我有一种感觉,这个网页是相关的,但我真的不明白它: http : //learn.iis.net/page.aspx/624/application-pool-identities/
创build一个帐户使用SQL,无论是一个Windows或SQL帐户,并指定在连接string。 出于安全的目的,你也应该使用以下命令encryptionweb.config:
%SYSTEMROOT%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -prov "RsaProtectedConfigurationProvider" -pef connectionStrings "[PathToWeb.Config]"
该帐户应具有数据库所需的权限,如db_DataReader和db_DataWriter。
解决scheme是创build一个访问权限有限的新域用户。 将这个新用户作为MSSQL的login名添加到特定的数据库,只需要您的权限(例如只读和写)。
然后configurationIIS网站以连接这个新的域用户。 你可能会认为把这个设置为应用程序池标识是可行的,但它不会! 为了使其工作,您还必须在AD中分配具有委托权限的计算机(信任此用户委派任何服务(仅Kerberos))。
相反,您可以打开网站的基本设置,然后单击“ Connect As...
选项并在此处inputlogin详细信息。
此方法不要求您在连接string中指定用户名和/或密码,它们都在IIS中pipe理。