【发布时间】:2017-12-20 21:17:37
【问题描述】:
我刚刚创建了一个 SSIS 包,并且能够将其连接到 SQL Server 代理作业。在教程中,它向我展示了创建代理帐户。代理帐户到底是什么?
【问题讨论】:
标签: sql-server ssis agent
我刚刚创建了一个 SSIS 包,并且能够将其连接到 SQL Server 代理作业。在教程中,它向我展示了创建代理帐户。代理帐户到底是什么?
【问题讨论】:
标签: sql-server ssis agent
在许多作业步骤类型中,您可以指定“运行为...”帐户(或代理或凭据)来执行此特定作业步骤。 您需要这个,例如,如果您的 SQL Server 代理服务在本地系统帐户下运行,但您希望在特定域用户下运行您的 SSIS 包(访问文件共享、远程服务器等 - 实际上有很多在这种情况下,您需要不同的登录名来运行您的任务)。 因此,您创建(提供)此用户的凭据(登录名和密码)(SQL Server 加密并存储它们以供将来使用 - 所以您应该只提供一次),然后创建所谓的“代理”,将此凭据分配给不同的类型的任务。然后,您只需在“运行方式...”字段中使用它们。
其他做法(我认为不好,但也可以使用)是在提升的帐户下简单地运行 SQL 代理服务。即使是域管理员,如果您只是本地域或非常安全的域。如果你这样做 - 你只在非常特殊的情况下才需要代理......
所以代理 - 是增强(或维护)环境安全性的功能。
另一种情况是,您的 ssis 包可能需要不同的登录名,即资源调控器功能。例如:4 个数据库,每个数据库的 4 个 ETL 周期(许多作业'n'steps),以及分配给他们任务的每个 ETL 周期的 4 个代理帐户(登录)。然后,您可以为每个登录分配工作负载组,并根据需要在它们之间分配服务器资源。您将在 SSISsyslog 中看到每个包的执行帐户,因此您应该能够轻松确定在出现任何问题时需要执行哪些操作。
希望这会有所帮助:)
【讨论】: