将 AWS Verified Access 与 Jamf 作为设备信任提供商集成 安全博客
在本文中,我们将探讨如何基于零信任架构构建远程连接,安全访问托管在 Amazon Web Services (AWS) 中的应用程序。我们将展示如何将 AWS Verified Access 与 Jamf 集成作为设备信任提供商。此外,我们还将讨论如何诊断可能导致用户被拒绝访问或收到未授权错误信息的 Verified Access 策略和集成问题。
在当前数字化时代,企业越来越需要确保其应用程序和数据的安全,而 AWS Verified Access 正是为此而设计的。Verified Access 是基于零信任原则构建的网络服务,可以安全地访问公司应用,而无需使用虚拟私人网络VPN,允许合规设备的用户在任何地方访问应用程序。Verified Access 减少了 IT 运维负担,因为它构建在开放环境上,并与现有信任提供商集成,让您可以利用已有的实施。
借助 Verified Access,您可以为应用程序集中定义访问策略,不仅基于 IP 地址,还可以使用来自用户身份以及信任提供商提供的用户设备的声明。在实时处理每个访问请求的同时,Verified Access 还会记录每个请求,从而更快捷地响应安全事件或审计请求。
Jamf 是一款 Apple 移动设备管理 (MDM) 软件及安全提供商。企业能够使用 Jamf 管理其公司设备,保持安全姿态。Jamf 的零信任产品 Jamf Trust 监控设备的安全状态,并通过 Jamf Protect 控制台将其报告给管理员。它会监测设备的操作系统设置、补丁级别以及设备设置是否符合组织定义的政策。
在本示例中,您将设置对销售应用程序和人力资源应用程序的远程访问。通过该解决方案,您希望确保只有销售组的用户可以访问销售应用程序,只有人力资源组的用户能够访问人力资源应用程序。
您将把应用程序纳入 Verified Access,并基于安全要求使用 Cedar 作为策略语言来定义访问策略。完成应用程序的上载并定义访问策略后,工程师和用户将能够通过 Verified Access 端点在任何地方访问应用程序,无需 VPN。
您也会使用来自设备的声明来确保设备是由 Jamf 管理且安全的例如,确认设备处于正确的补丁级别或没有安全漏洞,然后才授予用户相应应用程序的访问权限。

要将 Verified Access 与 Jamf 设备信任提供商集成,您需要具备以下前提条件。
在本演示中,您将使用 Amazon Elastic Compute Cloud (Amazon EC2) Mac 实例,由 Jamf 注册和管理。由于 EC2 Mac 实例未开箱即用支持 MDM,因此您可以通过以下步骤将其注册到 Jamf。
首先,您需要创建一些凭证并将其存储在 AWS Secrets Manager 中。这些凭证包括:Jamf 端点、具有注册权限的 Jamf 用户及其密码以及 EC2 Mac 实例的本地管理员和密码。我们使用 AWS Secrets Manager 进行此演示,但如有需要,您也可以使用 AWS 系统管理器的一项功能 Parameter Store。您可以在我们的 GitHub 示例代码中找到 AWS CloudFormation 和 Terraform 模板,均支持 Secrets Manager 和 Systems Manager。
CloudFormation 模板会创建以下内容:
jamfServerDomain 您组织的 Jamf URL,设备获取注册的端点。jamfEnrollmentUser Jamf 中具有设备注册权限的授权用户。jamfEnrollmentPassword 上述用户的密码。localAdmin 您 EC2 Mac 实例的管理员用户,具有安装所需配置文件和应用更改的权限。localAdminPassword EC2 Mac 实例上的管理员用户密码。CloudFormation 模板还会创建一个 Secrets Manager 秘密、一个 AWS 身份和访问管理 (IAM) 策略、一个角色和一个实例配置文件。
完成 CloudFormation 模板部署后,分配一个用于 Mac 的 Amazon EC2 专用主机并在该主机上启动 EC2 Mac 实例。在 启动实例 屏幕上,提供基本信息后,展开 高级详细信息 部分,选择作为 CloudFormation 部署的一部分创建的 IAM 实例配置文件。
启用屏幕共享,并将管理员密码设置为您创建凭证时使用的密码。输入以下命令:
bashsudo /usr/bin/dscl passwd /Users/ec2user l0c4l3x4mplep455w0rd sudo launchctl enable system/comapplescreensharing sudo launchctl load w /System/Library/LaunchDaemons/comapplescreensharingplist
启用屏幕共享后,使用 VNC Viewer 或类似工具连接到 EC2 Mac 实例,并在 系统设置 gt 用户与组 中启用自动登录。
将 GitHub 提供的 AppleScript 文件放置在 /Users/Shared 目录下:您可以先将脚本下载到本地,然后复制到实例上,或者直接在 EC2 Mac 实例上下载。如果您使用 VNC Viewer 连接到实例,可以将文件从本地计算机拖放到 EC2 Mac 实例中。编辑并更新 AppleScript,将 Secrets Manager 中的秘密 ID 赋值给 MMSecret 变量:MMSecret 是在 CloudFormation 模板部署过程中创建的 Secrets Manager 中的秘密。复制 Secrets Manager 控制台中的秘密 Amazon 资源名称ARN,或使用 AWS 命令行界面 (CLI) 获取 ARN,并更新到 AppleScript 中。使用以下命令运行 AppleScript,并允许该脚本访问辅助功能、应用管理和磁盘访问权限。当脚本运行时,屏幕可能会闪烁几次。
bashosascript /Users/Shared/enrollec2macscpt setup
当您看到 成功 消息时,点击 确定 并重启实例。实例重启后,登录到实例并继续注册。
该注册过程需要几分钟,您的 EC2 Mac 实例将接收来自 Jamf 实例的配置和策略,具体取决于您的管理员设置。
在此部分,您将在 Jamf 安全门户 RADAR 中集成 Verified Access 与 Jamf,并随后上载您的应用程序到 Verified Access,定义访问策略。您将首先在 Jamf 中启用 Verified Access。
Jamf Protect 和 Jamf Trust 是收集设备声明并将其与 Verified Access 共享的组件。以下部分说明了如何使 Jamf 准备好向 Verified Access 发送声明。此部分需在 Jamf Security 和 Jamf Pro 门户中完成。Jamf 的用户界面可能会根据使用的 Jamf Pro 版本有所不同。
创建并部署 Verified Access 浏览器扩展Firefox:
在 Jamf Pro 中,侧边栏顶部选择 计算机。在侧边栏中选择 配置文件 并选择 新建。在 常规 中,使用默认基本设置,包括施加配置文件的级别和分发方法。选择 应用程序和自定义设置 负载,选择 外部应用程序 gt 上传,然后选择 添加。在 首选项域 字段中输入 orgmozillafirefox。使用以下代码创建所需的浏览器扩展行为策略。以下示例 PLIST 中的键值对可以修改以匹配所需的策略选项。
蓝鸟加速器使用教程xmlltdictgt ltkeygtEnterprisePoliciesEnabledlt/keygt lttrue/gt ltkeygtExtensionSettingslt/keygt ltdictgt ltkeygtverifiedaccess@amazonawslt/keygt ltdictgt ltkeygtinstallurllt/keygt ltstringgthttps//addonsmozillaorg/firefox/downloads/latest/awsverifiedaccess/latestxpilt/stringgt ltkeygtinstallationmodelt/keygt ltstringgtnormalinstalledlt/stringgt lt/dictgt lt/dictgtlt/dictgt
选择 范围 选项卡,并配置配置文件的范围,选择 保存。
将应用程序上载到 Verified Access 需要四个步骤:
将 Verified Access 信任提供商上载。创建 Verified Access 实例。创建一个或多个 Verified Access 组。上载您的应用程序并创建 Verified Access 端点。以下步骤详细说明如何将应用程序上载到 Verified Access。
创建用户信任提供商
打开 Amazon VPC 控制台。在导航窗格中,选择 Verified Access 信任提供商,然后选择 创建 Verified Access 信任提供商。提供 名称 和 描述。屏幕快照显示 identitycentertrustprovider 作为名称,描述为 Identity Center 作为信任提供商。提供一个 策略引用名称,稍后在定义策略时使用。此屏幕快照将 idcpolicy 显示为策略引用名称。选择 用户信任提供商。选择 IAM 身份中心。提供附加标签。选择 创建 Verified Access 信任提供商。创建设备信任提供商
打开 Amazon VPC 控制台。在导航窗格中,选择 Verified Access 信任提供商,然后选择 创建 Verified Access 信任提供商。提供 名称 和 描述。屏幕快照显示 devicetrustprovider 作为名称,描述为 Jamf