我无法找到有关如何模拟用户以及以该用户身份打开SqlConnection的文档。
背景
DBA提供了一个可以访问数据库的Active Directory帐户。使用连接字符串时:
"Server=server\instance;Initial Catalog=mtdatabase; User ID=domain\user; Password=mypassword;";
我收到一个不允许用户的错误。使用集成安全性时,它会忽略指定的用户名和密码,并使用当前登录的用户(我在本地调试时)。
如何使用我的代码中提供的信息模拟用户,以确保用它来打开连接?
目前,我正在使用以下代码,在尝试打开连接时失败:
[Route("api/[controller]")]
public class HomeController : Controller
{
// GET: /<controller>/
[HttpGet]
public IEnumerable<string> Index()
{
string connString = "Server=server\\instance;Initial Catalog=mtdatabase; User ID=domain\\user; Password=mypassword;";
using (var conn = new SqlConnection(connString))
{
conn.Open();
conn.Close();
}
return new string[] { "value1", "value2" };
}
}