SSIS 包 SSIS 是什么凭据 运行?
SSIS Package What credential SSIS is running?
我有访问 excel 文件 .xls 的程序包。此文件位于网络路径上。
打包是从商店调用的,传递 use32bit运行time = true。该商店是从 C# 代码调用的。
如果文件是本地文件=>包运行成功。
如果文件是网络路径 => 包 运行 失败。
正在检查网络路径:
我可以访问网络路径,甚至可以手动打开文件。
所以我的问题是什么实际上是凭据 SSIS 包 运行ning?
如果我的帐户 运行 登录 SQL 并致电商店,则应该可以访问该文件。但事实并非如此。事实证明,另一个凭证被我自己的凭证取代了。
找了好久没找到答案
非常感谢对此的任何帮助。
这是执行 SSIS 的商店
ALTER PROCEDURE [dbo].[execute_ssis_package]
@folder_name varchar(100)
,@project_name varchar(100)
,@package_name varchar(300)
--,@RunAccount varchar(300) OUTPUT
,@output_execution_id BIGINT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @execution_id BIGINT
EXEC ssisdb.catalog.create_execution @folder_name,
@project_name,
@package_name,
@use32bitruntime = True,
@reference_id = Null,
@execution_id = @execution_id OUTPUT
Select @execution_id
DECLARE @var0 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value]
@execution_id,
@object_type=50,
@parameter_name=N'LOGGING_LEVEL',
@parameter_value=@var0
EXEC ssisdb.catalog.start_execution @execution_id
SET @output_execution_id = @execution_id
运行SSIS 包的凭据:
如果 运行 来自 SQL 代理,它将 运行 作为代理用户 运行 启用 Windows 服务。
如果 运行 来自 SQL 代理通过代理凭据,它 运行 在该凭据下。
如果 运行 来自 Windows 调度程序通过 dtexec,它 运行 在调度程序中定义的用户下。
在你的例子中,你使用的是存储过程,谁调用它?
我有访问 excel 文件 .xls 的程序包。此文件位于网络路径上。
打包是从商店调用的,传递 use32bit运行time = true。该商店是从 C# 代码调用的。
如果文件是本地文件=>包运行成功。
如果文件是网络路径 => 包 运行 失败。
正在检查网络路径:
我可以访问网络路径,甚至可以手动打开文件。
所以我的问题是什么实际上是凭据 SSIS 包 运行ning?
如果我的帐户 运行 登录 SQL 并致电商店,则应该可以访问该文件。但事实并非如此。事实证明,另一个凭证被我自己的凭证取代了。
找了好久没找到答案
非常感谢对此的任何帮助。
这是执行 SSIS 的商店
ALTER PROCEDURE [dbo].[execute_ssis_package]
@folder_name varchar(100)
,@project_name varchar(100)
,@package_name varchar(300)
--,@RunAccount varchar(300) OUTPUT
,@output_execution_id BIGINT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @execution_id BIGINT
EXEC ssisdb.catalog.create_execution @folder_name,
@project_name,
@package_name,
@use32bitruntime = True,
@reference_id = Null,
@execution_id = @execution_id OUTPUT
Select @execution_id
DECLARE @var0 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value]
@execution_id,
@object_type=50,
@parameter_name=N'LOGGING_LEVEL',
@parameter_value=@var0
EXEC ssisdb.catalog.start_execution @execution_id
SET @output_execution_id = @execution_id
运行SSIS 包的凭据:
如果 运行 来自 SQL 代理,它将 运行 作为代理用户 运行 启用 Windows 服务。
如果 运行 来自 SQL 代理通过代理凭据,它 运行 在该凭据下。
如果 运行 来自 Windows 调度程序通过 dtexec,它 运行 在调度程序中定义的用户下。
在你的例子中,你使用的是存储过程,谁调用它?