BITS、TakeOwnership 和 Kerberos/Windows 集成身份验证
我们使用 BITS 将文件从零售地点的机器上传到我们的服务器。如果拥有 BITS 作业的用户注销,BITS 将停止传输文件。因此,我们使用作为 LocalSystem 运行的 Windows 服务将作业提交到 BITS 并成为作业所有者。这使得传输可以 24/7 持续进行。
然而,它提出了有关身份验证的问题。我们希望 IIS 中的 BITS 服务器扩展使用 Kerberos 来验证客户端计算机。据我所知,我们只剩下两个选择,这两个选项都不理想:要么创建一个“ImageUploader”帐户并将其用户名/密码存储在 Windows 服务用作 BITS 凭据的配置文件中作业,或者我们向创建 BITS 作业的登录用户询问其密码,然后使用其凭据执行 BITS 作业。我想第三个选项是不使用 Kerberos,也许使用 Basic Auth 加 SSL。
我确信我错了,还有更好的选择。有吗?
(顺便说一句,这是 BITS 的简介 有关服务帐户的文档, 模拟和 BITS):
您可以使用的服务帐户和 BITS 用于从服务传输文件的 BITS。 该服务必须作为 本地系统、本地服务或 NetworkService 系统帐户。工作机会 由系统帐户创建的有 由该帐户拥有。因为系统 帐户始终登录,BITS 只要传输文件 计算机正在运行并且有一个 网络连接。如果有服务 在系统帐户下运行 在呼叫之前冒充用户 BITS,BITS 的反应就像它会做的那样 任何用户帐户(用户必须是 已登录)。有关使用的更多详细信息 具有 BITS 的服务,请参阅平台 SDK。
谢谢。
We're using BITS to upload files from machines in our retail locations to our servers. BITS will stop transferring a file if the user who owns the BITS job logs off. Therefore, we're using a Windows Service running as LocalSystem to submit the jobs to BITS and be the job owner. This allows transfers to continue 24/7.
However, it raises a question about authentication. We want the BITS server extensions in IIS to use Kerberos to authenticate the client machine. As far as I can tell, that leaves us with only 2 options, both of which are not ideal: Either we create an "ImageUploader" account and store its username/password in a config file that the Windows Service uses as credentials for the BITS job, or we ask the logged on user who creates the BITS job for his password, and then use his credentials for the BITS job. I guess the third option is not to use Kerberos, and maybe go with Basic Auth plus SSL.
I'm sure I'm wrong and there's a better option. Is there?
(By the way, here's a blurb from BITS
documentation about Service Accounts,
impersonation and BITS):Service Accounts and BITS You can use
BITS to transfer files from a service.
The service must run as the
LocalSystem, LocalService, or
NetworkService system account. Jobs
created by the system account are
owned by that account. Because system
accounts are always logged on, BITS
transfers the files as long as the
computer is running and there is a
network connection. If a service
running under a system account
impersonates the user before calling
BITS, BITS responds as it would for
any user account (the user must be
logged on). For more details on using
a service with BITS, see the Platform
SDK.
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论