【问题标题】:Windows authentication of an application hosted in Windows Container托管在 Windows 容器中的应用程序的 Windows 身份验证
【发布时间】:2016-04-13 02:53:26
【问题描述】:

我想使用 Windows 身份验证来访问托管在 Windows 容器中的 ASP.NET 应用程序(在 Windows Server 2016 TP4 中)。为此,我认为我需要将容器添加到 Active Directory 域。是否可以将 Windows 容器(或 Hyper-V 容器)添加到域中? Microsoft 对此没有明确的文档,我自己尝试使用 PowerShell 将容器添加到域中,但没有运气。

如果不支持加入容器的域,是否有其他方法可以在 Windows 或 Hyper-V 容器中托管的 Web 应用程序中启用 Windows 身份验证?

我们将不胜感激。

【问题讨论】:

    标签: asp.net windows docker windows-authentication windows-server-2016


    【解决方案1】:

    微软最近提供了一个容器使用域凭据访问资源的解决方案:group managed service accounts

    虽然 Windows 容器不能加入域,但它们也可以 利用 Active Directory 域身份,类似于 设备已加入领域。使用 Windows Server 2012 R2 域 控制器,我们引入了一个称为组托管的新域帐户 旨在由服务共享的服务帐户 (gMSA)。

    此外,这里是a guide that walks through the specific steps in detail,涵盖以下内容:

    使用模拟域身份部署容器很简单,并且 基于使用 Windows Server 和 Active 的现有工作流程 目录。

    部署此功能需要:

    • 在 Windows Server 2012 上运行的现有 Active Directory 域或 后期功能层
    • 具有容器角色的 Windows Server 2016 和 安装了 Docker。这将被称为容器主机。这些 主机需要加入域。

    本指南将涵盖 以下步骤详细部署容器:

    1. 在 Active Directory 中创建一个组托管服务帐户,用于 每个应用程序/服务
    2. 授予每个容器主机访问权限以使用 组托管服务帐户
    3. 在每个上添加配置文件 存储有关组托管服务的详细信息的容器主机 帐户。这些将被称为凭据规格
    4. 开始 带有参数的容器,告诉使用哪个凭证规范

    【讨论】:

    • 这对于在容器内运行的进程非常有效,但对于在容器内运行的服务似乎不起作用,即使作为 LocalService 运行也是如此。有没有其他人注意到这一点?
    • 你可以试试本地系统和网络服务吗?如文档中所述:docs.microsoft.com/en-us/virtualization/windowscontainers/… ,仅当服务运行为本地系统或网络服务时才有效。
    【解决方案2】:

    Windows Containers - Work in progress 的摘录

    “容器不能加入 Active Directory 域,也不能以域用户、服务帐户或机器帐户的身份运行服务或应用程序。”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多