sql-server - Windows 用户拒绝 SQL Server 批量 openrowset 访问,但拒绝 sa
问题描述
当我以sa用户身份登录时,我可以运行以下命令:
SELECT *
FROM OPENROWSET(BULK '\\server1\files\test.pdf', SINGLE_BLOB) x
但是,当我以具有 sysadmin、bulkadmin 和 serveradmin 角色的Windows 用户身份登录时,我收到以下错误:
消息 4861,级别 16,状态 1,第 1 行
无法批量加载,因为无法打开文件“\server1\files\test.pdf”。操作系统错误代码 5(拒绝访问。)。
我的 Windows 用户缺少哪些权限?
解决方案
我可以通过创建一个调用我的存储过程的 SQL 作业来规避这个问题,在该存储过程中出现批量插入脚本。运行作业时,将使用 SQL 代理凭据并读取 blob。
推荐阅读
- r - 以编程方式改变符号符号
- spring-boot - 在 swagger ui 上找不到授权按钮
- javascript - 在 2 个部分椭圆之间填充
- python - 在 Python 上使用 Selenium 查找问题按钮(不起作用)
- android - 在 VS Code 上运行简单的 Kotlin 脚本后出现错误
- rest - PATCH 请求中的路径参数与查询参数
- amazon-web-services - AWS cron 作业在两个小时的时间跨度内每分钟运行一次?
- c++ - 介绍工程的 C++ 作业
- django - 如何检查唯一的 bulk_create
- reactjs - 错误:使用 `/posts` 的`href` 传递了多个孩子,但只支持一个孩子