Skip to content

安全配置

FileVault (macOS)

FileVault 为 macOS 设备提供全磁盘加密(XTS-AES-128)。启用后,启动磁盘将被加密,启动时需要输入密码才能解锁。

个人恢复密钥

启用 FileVault 时会生成一个个人恢复密钥。如果用户忘记登录密码,此密钥可用于解锁磁盘。该密钥应托管到 MDM 服务器以安全保管。

机构恢复密钥

机构恢复密钥是一种基于公钥的恢复机制。对应的私钥由组织持有,允许 IT 部门无需用户的个人密钥即可解锁任何已启用 FileVault 加密的设备。

配置

类型描述
DeferBoolean延迟 FileVault 启用,直到用户注销
DeferDontAskAtAuthBoolean禁止显示 FileVault 登录提示
ShowRecoveryKeyBoolean向用户显示个人恢复密钥
OutputPathString恢复密钥托管负载的写入路径

防火墙 (macOS)

macOS 包含一个内置的应用防火墙,可基于每个应用控制传入连接。

启用防火墙

打开应用防火墙以阻止未经请求的传入连接。

隐身模式

启用后,设备不会对关闭端口上的探测(例如 ICMP ping)做出响应,从而降低其在网络上的可见性。

应用特定规则

允许或阻止特定应用的传入连接。规则可通过包标识符(bundle identifier)定义。

类型描述
EnableFirewallBoolean启用 macOS 应用防火墙
BlockAllIncomingBoolean阻止除基本服务外的所有传入连接
EnableStealthModeBoolean启用隐身模式(不响应探测)
ApplicationsArray具有按应用防火墙规则的应用列表

证书

在设备上安装受信任的根证书和中间证书。这对于以下场景至关重要:

  • 内部 PKI 信任链
  • 基于证书的身份验证
  • TLS 检查和内容过滤
  • Wi-Fi 和 VPN 证书信任

配置

类型描述
PayloadCertificateFileNameString证书文件名
PayloadContentDataBase64 编码的证书数据(DER 或 PEM)
PayloadCertificateUUIDString证书负载的唯一标识符

证书可以标记为受信任(添加到系统信任存储)或不受信任(添加到钥匙串但默认不受信任)。

SCEP

简单证书注册协议(SCEP)可自动完成证书的签发和续期。设备向 SCEP 服务器请求证书,无需手动分发证书。

配置

类型描述
URLStringSCEP 服务器 URL
NameString证书主题名称模板
SubjectArray证书主题属性(例如 CN、O、C)
ChallengeString用于注册的一次性挑战密码
KeySizeIntegerRSA 密钥大小(1024、2048、4096)
KeyTypeString密钥算法(RSAECDSA
KeyUsageInteger密钥用途标志(digitalSignature、keyEncipherment)
RetriesInteger失败时的重试次数
RetryDelayInteger重试间隔秒数

工作流程

  1. 设备在本地生成密钥对
  2. 设备向 SCEP 服务器发送 PKCS#10 证书签名请求(CSR)
  3. SCEP 服务器验证挑战并签发证书
  4. 设备安装已签发的证书
  5. 设备在证书到期前使用相同的 SCEP URL 进行续期

单一应用模式

单一应用模式(SAM)将设备限制为仅运行单个应用,从而创建信息亭(kiosk)模式。退出应用需要密码或 MDM 命令。

配置

类型描述
AllowTouchScreenRotateBoolean允许在信息亭模式下旋转屏幕
AllowAutoLockBoolean允许设备自动锁定
AllowLockScreenBoolean允许访问锁定屏幕
AllowVolumeButtonsBoolean允许使用音量按钮
AllowRingerSwitchBoolean允许使用静音开关(iOS)
AutonomousSingleAppModePermittedAppIDsArray允许自主进入 SAM 的应用包 ID

使用场景

  • 销售点终端
  • 数字标牌
  • 考试监考
  • 图书馆目录查询站
  • 患者签到信息亭

隐私偏好 (macOS)

macOS 隐私偏好策略控制(PPPC)管理应用对系统隐私控制的访问。这取代了用户需要在系统设置中手动批准权限的操作。

支持的隐私服务

服务描述
AddressBook通讯录访问
Calendar日历访问
Reminders提醒事项访问
Photos照片库访问
Camera相机访问
Microphone麦克风访问
Accessibility辅助功能 API 访问
PostEvent系统级事件发布
SystemPolicyAllFiles全磁盘访问
SystemPolicySysAdminFiles系统管理文件访问
DesktopFolder桌面文件夹访问
DocumentsFolder文档文件夹访问
DownloadsFolder下载文件夹访问
FileProviderPresence文件提供商域访问

配置

类型描述
CodeRequirementString应用的代码签名要求(例如 identifier "com.example.app" and anchor apple generic
IdentifierString应用的包标识符
IdentifierTypeStringbundleIDpath
StaticCodeValidationBoolean在授予访问权限前验证应用的代码签名
AllowedBooleantrue 允许,false 拒绝

示例

xml
<dict>
    <key>CodeRequirement</key>
    <string>identifier "com.microsoft.teams" and anchor apple generic</string>
    <key>Identifier</key>
    <string>com.microsoft.teams</string>
    <key>IdentifierType</key>
    <string>bundleID</string>
    <key>StaticCodeValidation</key>
    <true/>
    <key>Allowed</key>
    <true/>
</dict>

基于 MIT 许可证发布