开发者社区> 问答> 正文

.NET核心实体框架让用户运行存储过程

我有一个正在Windows身份验证下运行的ASP.NET Core Web API。我有使用连接字符串语法处理数据库的实体框架: "data source=dbserver; initial catalog=IntranetDB; persist security info=True; Integrated Security=SSPI;"

我的Web API在特定的应用程序池和服务帐户下运行sa_db。

这sa_db是数据库的所有者并已bulk load启用。

API中的一个过程是将.csv文件保存到网络共享,然后调用SP来打开该文件并对其进行处理。 问题 在进行一些更改(例如将以下内容添加到SP)后,我们遇到了一些有关权限的问题(“访问被拒绝”):

}1NDU9`34OE(K%9N9SD{FPS.png

我们有一个例外:

System.Data.SqlClient.SqlException (0x80131904): You do not have permission to use the bulk load statement. 但是sa_db启用了此功能。

当我们使用API​​将bulk load启用了API的AD用户的安全组添加到SQL数据库时,一切正常。

在SQL的活动监视器中,我只能看到该sa_db帐户。

为什么SP使用AD而不是服务帐户在AD用户下运行?

展开
收起
游客syccbxcrjoo2g 2019-11-29 14:55:04 851 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
JS 语言在引擎级别的执行过程 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载