Skip to content

macOS 特定配置

登录窗口

登录窗口是用户在 macOS 上看到的第一个画面。MDM 可以自定义其外观和行为。

显示/隐藏用户

控制哪些用户显示在登录屏幕上。隐藏的用户必须输入用户名才能登录。

类型描述
HideAdminUsersBoolean在登录窗口中隐藏管理员账户
HideLocalUsersBoolean隐藏本地(非网络)用户账户
HideMobileAccountsBoolean隐藏移动账户用户
IncludeAllNetworkUsersBoolean在登录屏幕上显示所有网络用户
ShowFullNameBoolean显示全名而非短名称
ShowOtherUsersBoolean显示"其他"选项以手动输入用户名

登录横幅

在登录窗口上显示自定义消息,通常用于法律声明或可接受使用政策。

类型描述
BannerTextString显示在登录提示上方的自定义文本

登录窗口行为

类型描述
DisableScreenLockImmediateBoolean阻止从登录窗口立即锁定屏幕
DisableAutomaticLoginBoolean禁用自动登录(出于安全考虑推荐)
LoginWindowTextString显示在登录窗口底部的页脚文本
ShutDownDisabledBoolean隐藏"关机"按钮
RestartDisabledBoolean隐藏"重新启动"按钮
SleepDisabledBoolean隐藏"睡眠"按钮

示例

xml
<dict>
    <key>HideAdminUsers</key>
    <false/>
    <key>HideLocalUsers</key>
    <false/>
    <key>HideMobileAccounts</key>
    <true/>
    <key>BannerText</key>
    <string>本系统仅供授权用户使用。</string>
    <key>ShutDownDisabled</key>
    <false/>
    <key>RestartDisabled</key>
    <false/>
</dict>

Dock

Dock 配置控制 macOS Dock 的外观、行为和固定应用。

Dock 项目

指定哪些应用和文件夹显示在 Dock 中。项目通过 bundle identifier 或路径定义。

类型描述
static-appsArray固定在 Dock 中的应用列表
static-othersArray固定在 Dock 中的文件夹或文件路径列表
static-onlyBoolean阻止用户添加或移除 Dock 项目

Dock 大小和位置

类型描述
tilesizeIntegerDock 图标大小,单位为像素(1–128)
magnificationBoolean启用悬停时图标放大效果
largesizeInteger放大后的图标大小,单位为像素
orientationStringDock 位置:leftbottomright
mineffectString最小化动画:geniescale
minimize-to-applicationBoolean将窗口最小化到应用图标而非 Dock

自动隐藏

类型描述
autohideBoolean自动隐藏和显示 Dock
autohide-delayFloatDock 自动隐藏前的延迟秒数
autohide-modifierString启用自动隐藏时,显示 Dock 所需的修饰键

示例

xml
<dict>
    <key>static-apps</key>
    <array>
        <string>/Applications/Safari.app</string>
        <string>/Applications/Mail.app</string>
        <string>/Applications/Calendar.app</string>
        <string>/Applications/Microsoft Teams.app</string>
    </array>
    <key>static-others</key>
    <array>
        <string>/Applications</string>
        <string>~/Downloads</string>
    </array>
    <key>static-only</key>
    <false/>
    <key>tilesize</key>
    <integer>48</integer>
    <key>orientation</key>
    <string>bottom</string>
    <key>autohide</key>
    <true/>
</dict>

节能

电源管理设置控制显示器何时休眠、电脑何时休眠以及唤醒行为。

电源设置

类型描述
DesktopDictionary设备连接交流电源时的电源设置
PortableDictionary设备使用电池电源时的电源设置
DestroyFVKeyOnStandbyBoolean在待机时销毁 FileVault 密钥以增强安全性

桌面(交流电源)

类型描述
DisplaySleepTimerInteger显示器休眠前的分钟数(0 = 永不)
DiskSleepTimerInteger磁盘休眠前的分钟数(0 = 永不)
SleepDisabledBoolean阻止电脑进入睡眠
PowerNapBoolean启用 Power Nap(睡眠时进行后台更新)
WakeOnLANBoolean网络活动时唤醒设备
AutomaticRestartOnPowerLossBoolean断电后自动重新启动

便携式(电池电源)

与桌面相同的键,在设备使用电池运行时生效。

示例

xml
<dict>
    <key>Desktop</key>
    <dict>
        <key>DisplaySleepTimer</key>
        <integer>15</integer>
        <key>DiskSleepTimer</key>
        <integer>30</integer>
        <key>SleepDisabled</key>
        <false/>
        <key>WakeOnLAN</key>
        <true/>
    </dict>
    <key>Portable</key>
    <dict>
        <key>DisplaySleepTimer</key>
        <integer>5</integer>
        <key>DiskSleepTimer</key>
        <integer>15</integer>
        <key>SleepDisabled</key>
        <false/>
    </dict>
</dict>

软件更新

控制 macOS 如何检查、下载和安装软件更新。

更新行为

类型描述
AllowPreReleaseInstallationInteger控制测试版软件安装:0 = 不允许,1 = 允许,2 = 仅允许用于生产环境
AutomaticCheckEnabledBoolean启用自动更新检查
AutomaticDownloadBoolean自动下载更新(需要用户批准才能安装)
ConfigDataInstallBoolean自动安装配置数据更新
CriticalUpdateInstallBoolean自动安装安全更新和系统数据文件
AutomaticallyInstallMacOSUpdatesBoolean自动安装主要 macOS 更新
AutomaticallyInstallAppUpdatesBoolean自动安装 App Store 应用更新
DeferUpdatesBoolean在可配置的期限内对用户延迟显示更新
DeferPeriodInteger延迟更新的天数(1–90)

延迟策略

延迟允许 IT 部门在更新到达最终用户之前进行测试。延迟期限从 Apple 发布更新后开始计算。

类型描述
DeferMajorPeriodInteger延迟主要 macOS 更新的天数
DeferMinorPeriodInteger延迟次要 macOS 更新的天数
DeferNonOSPeriodInteger延迟非操作系统更新(Safari、XProtect 等)的天数

示例

xml
<dict>
    <key>AutomaticCheckEnabled</key>
    <true/>
    <key>AutomaticDownload</key>
    <true/>
    <key>ConfigDataInstall</key>
    <true/>
    <key>CriticalUpdateInstall</key>
    <true/>
    <key>AutomaticallyInstallMacOSUpdates</key>
    <false/>
    <key>DeferUpdates</key>
    <true/>
    <key>DeferPeriod</key>
    <integer>30</integer>
</dict>

系统扩展

系统扩展是内核扩展的现代替代方案。它们在用户空间中运行,提供网络、端点安全和驱动程序功能,无需将代码加载到内核中。

允许系统扩展

系统扩展必须由用户明确允许或通过 MDM 预先批准。每个扩展通过其 bundle identifier 和 team identifier 进行标识。

类型描述
AllowedSystemExtensionsDictionary将 team identifier 映射到允许的扩展 bundle identifier 数组
AllowedTeamIdentifierString扩展开发者的 Apple Developer Team ID
AllowedBundleIdentifierString系统扩展的 bundle identifier

系统扩展类型

类型描述
Network ExtensionVPN、内容过滤、DNS 代理、网络代理
Endpoint Security Extension文件、进程和网络事件监控
DriverKit Extension在用户空间中运行的硬件驱动程序
Serial Extension串行设备访问

示例

xml
<dict>
    <key>AllowedSystemExtensions</key>
    <dict>
        <key>ABC123DEFG</key>
        <array>
            <string>com.example.vpn.networkextension</string>
            <string>com.example.security.endpoint</string>
        </array>
    </dict>
</dict>

内核扩展

传统内核扩展(kext)在内核空间中运行。Apple 已弃用内核扩展,推荐使用系统扩展,但某些第三方软件仍然需要它们。

允许内核扩展

内核扩展必须通过 team identifier 或 bundle identifier 明确允许。

类型描述
AllowUserOverridesBoolean允许用户批准额外的内核扩展
AllowedTeamIdentifiersArray允许其 kext 的 Apple Developer Team ID 列表
AllowedKernelExtensionsDictionary将 team identifier 映射到允许的 kext bundle identifier 数组

示例

xml
<dict>
    <key>AllowUserOverrides</key>
    <true/>
    <key>AllowedTeamIdentifiers</key>
    <array>
        <string>ABC123DEFG</string>
    </array>
    <key>AllowedKernelExtensions</key>
    <dict>
        <key>ABC123DEFG</key>
        <array>
            <string>com.example.legacy.driver</string>
        </array>
    </dict>
</dict>

登录项

登录项是用户登录时自动启动的应用、后台服务和脚本。

托管登录项

MDM 可以在受管理的 macOS 设备上添加、移除或强制设置登录项。

类型描述
AutoLaunchedApplicationDictionaryArray用户登录时要启动的应用列表
HideBoolean启动时隐藏应用窗口
PathString应用的完整文件系统路径
BundleIdentifierString应用的 bundle identifier

后台登录项

macOS 还支持在后台运行的登录项(启动代理),无需显示用户界面。

类型描述
BackgroundLoginItemsArray登录时要启动的后台服务列表
BundleIdentifierString后台服务的 bundle identifier
HideBoolean对用户隐藏该服务

示例

xml
<dict>
    <key>AutoLaunchedApplicationDictionary</key>
    <array>
        <dict>
            <key>Hide</key>
            <false/>
            <key>Path</key>
            <string>/Applications/Microsoft Teams.app</string>
        </dict>
        <dict>
            <key>Hide</key>
            <true/>
            <key>Path</key>
            <string>/Applications/CompanyPortal.app</string>
        </dict>
    </array>
</dict>

基于 MIT 许可证发布