之前为我们所有的asp.net应用程序我们一直在使用SQL Server中的系统管理员用户来连接和添加/更新/删除/获取数据.我们的SQL管理员希望删除该帐户并创建一个域帐户,以便我们可以在我们的系统中使用该帐户.net应用程序.

我当前的连接字符串是:

name="name" connectionString="Data Source=server;Initial Catalog=database;Persist Security Info=True;User ID=user;Password=password" providerName="System.Data.SqlClient"

使用域帐户的连接字符串是什么?

我试过:

name="name" connectionString="Data Source=server;Initial Catalog=database;Persist Security Info=True;User ID=domain\user;Password=password" providerName="System.Data.SqlClient"

而且它不起作用.

是否有其他方法可以使用域帐户连接到SQL Server?

推荐答案

看看每种可能的变化都有connectionstrings.com个——这是我一直在使用的一个非常方便的资源

具体来说,您需要以下格式:

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;

当然,这只有在相关的域帐户是打开连接的帐户时才有效.

使用任意凭据进行连接并不容易,但您可以先访问相关用户,然后再进行连接.

这可能有点痛.如果用户在本地网络上(或者您控制他们的浏览器配置),另一种方法是在您的站点上使用Kerberos身份验证.这些页面将使用相关用户的权限提供服务-然后您可以使用上面的连接字符串,并且IIS将使用每个用户的适当凭据连接到数据库.从安全的Angular 来看,这特别有用,因为DB能够基于每个用户进行审计,并且权限可以是每个用户/行/列,而不仅仅是每个应用程序.

Asp.net相关问答推荐

Thread.CurrentPrincipal 错误地声称是匿名的

如何在asp.net中单击按钮的新选项卡中打开页面?

异步编程与线程有什么不同?

如何以编程方式获取会话 cookie 名称?

在 IIS 上托管 ASP.NET 5 项目

如何设置asp.net身份cookie过期时间

从 ASP.NET 中的 POST 方法中检索数据

在 ASP.NET 中将虚拟路径转换为实际 Web 路径

如何在 ASP.NET 下拉列表中添加选项组?

如何找出我的 Windows 域上托管 LDAP 的服务器?

在asp.net mvc 3中实现FilterAttribute,IActionFilter和从ActionFilterAttribute继承有什么区别?

ASP.NET IIS Web.config [内部服务器错误]

带有 2 个提交按钮/操作的 ASP.Net MVC 4 表单

<%# Eval("State") %> 或 <%# DataBinder.Eval(Container.DataItem, "state")%>

svg 无法在 localhost 上的 IIS 网络服务器上运行

MVC 4 - Razor - 将变量传递到 href url

在c#中显示带有换行符的标签文本

回发后运行javascript函数

获取 Application_Start 中的当前应用程序物理路径

目录与目录信息