使用自定义设备配置文件使用 Intune 创建具有预共享密钥的 WiFi 配置文件
重要
Microsoft Intune 已于 2024 年 12 月 31 日终止对有权访问 Google 移动服务的设备上的 Android 设备管理员管理的支持, (GMS) 。 在此日期之后,设备注册、技术支持、bug 修复和安全修复将不可用。 如果当前使用设备管理员管理,建议在支持结束之前切换到 Intune 中的另一个 Android 管理选项。 有关详细信息,请参阅 在 GMS 设备上结束对 Android 设备管理员的支持。
预共享密钥 (PSK) 通常用于对 WiFi 网络或无线 LAN 的用户进行身份验证。 使用 Intune,可以使用预共享密钥创建 WiFi 设备配置策略。
若要创建配置文件,请使用 Intune 中的“自定义设备配置文件”功能。
此功能适用于:
- Android 设备管理员
- 带工作配置文件的 Android Enterprise 个人拥有的设备
- Windows
- 基于 EAP 的 Wi-Fi
在 XML 文件中添加 Wi-Fi 和 PSK 信息。 然后,将 XML 文件添加到 Intune 中的自定义设备配置策略。 策略准备就绪后,将策略分配给设备。 下次设备签入时,应用策略,并在设备上创建 Wi-Fi 配置文件。
本文介绍如何在 Intune 中创建策略,并包含基于 EAP 的 Wi-Fi 策略的 XML 示例。
重要
- 将预共享密钥与 Windows 10/11 结合使用会导致在 Intune 中显示修正错误。 发生这种情况时,Wi-Fi 配置文件将正确分配给设备,并且配置文件确实按预期工作。
- 如果导出的 Wi-Fi 配置文件含有预共享密钥,请务必保管好该文件。 密钥采用纯文本格式。 保护密钥是你的责任。
先决条件
- 若要创建策略,请至少使用具有策略和配置文件管理器内置角色的帐户登录到 Microsoft Intune 管理中心。 有关内置角色的详细信息,请转到 Microsoft Intune 的基于角色的访问控制。
开始之前
- 从连接到该网络的计算机复制 XML 语法可能更容易,如本文) 从 现有 Wi-Fi 连接 (创建 XML 文件 中所述。
- 可以通过添加更多的 OMA-URI 设置来添加多个网络和密钥。
- 对于 iOS/iPadOS,在 Mac 工作站上使用 Apple Configurator 来设置配置文件。
- PSK 需要 64 个十六进制数字的字符串,或 8 到 63 个可打印的 ASCII 字符的密码。 不支持某些字符,例如星号 (
*
) 。
创建自定义配置文件
选择“设备”>“管理设备”>“配置”>“创建”>“新策略”。
输入以下属性:
- 平台:选择平台。
- 配置文件类型:选择“ 自定义”。 或者,选择“模板”>“自定义”。
选择“创建”。
在“基本信息”中,输入以下属性:
- 名称:输入策略的描述性名称。 为策略命名,以便稍后可以轻松地识别它们。 例如,一个好的策略名称是 Android-Custom Wi-Fi 配置文件。
- 说明:输入配置文件的说明。 此设置是可选的,但建议进行。
选择 下一步。
在“配置设置”中,选择“添加”。 输入具有以下属性的新 OMA URI 设置:
名称:输入 OMA-URI 设置的名称。
描述:输入 OMA-URI 设置的描述。 此设置是可选的,但建议进行。
OMA-URI:使用以下选项之一:
-
对于 Android:
./Vendor/MSFT/WiFi/Profile/SSID/Settings
-
对于 Windows :
./Vendor/MSFT/WiFi/Profile/SSID/WlanXml
注意
- 请务必在 OMA-URI 值的开头包含句点字符。
- 如果 SSID 有空格,则添加转义空格
%20
。
SSID (服务集标识符) 是要为其创建策略 Wi-Fi 网络名称。 例如,如果 Wi-Fi 命名为
Hotspot-1
,则输入./Vendor/MSFT/WiFi/Profile/Hotspot-1/Settings
。 如果 Wi-Fi 命名为Contoso WiFi
,则输入./Vendor/MSFT/WiFi/Profile/Contoso%20WiFi/Settings
(包含%20
转义空格)。-
对于 Android:
数据类型:选择“字符串”。
值:粘贴 XML 代码。 请参阅本文中的示例。 更新每个值以匹配你的网络设置。 请参阅代码的注释部分获取一些提示。
选择“添加”,保存所做更改。
选择 下一步。
在“作用域标记”(可选)中,分配一个标记以将配置文件筛选到特定 IT 组(如
US-NC IT Team
或JohnGlenn_ITDepartment
)。 有关范围标记的详细信息,请转到 使用分布式 IT 的 RBAC 和范围标记。选择 下一步。
在“分配”中,选择要接收配置文件的用户或用户组。 有关分配配置文件的详细信息,请转到 分配用户和设备配置文件。
注意
只能将此策略分配到用户组。
选择 下一步。
在“查看并创建”中查看设置。 选择“创建”时,将保存所做的更改并分配配置文件。 该策略也会显示在配置文件列表中。
每个设备在下次签入时,将应用该策略,且将在设备上创建 Wi-Fi 配置文件。 然后设备便能够自动连接到网络。
Android 或 Windows Wi-Fi 配置文件示例
下面的示例包含针对 Android 或 Windows Wi-Fi 配置文件的 XML 代码。 该示例用于展示正确的格式并提供更多信息。 但它只是一个示例,并非推荐的环境配置。
须知内容
<protected>false</protected>
必须设为 false。 如果 为 true,可能会导致设备需要加密的密码,然后尝试解密它;这可能会导致连接失败。<hex>53534944</hex>
应设置为<name><SSID of wifi profile></name>
的十六进制值。 Windows 10/11 设备可能会返回错误x87D1FDE8 Remediation failed
,但设备仍包含配置文件。XML 包含特殊字符,例如
&
(& 号)。 使用特殊字符可以防止 XML 按预期工作。
示例
<!--
<hex>53534944</hex> = The hexadecimal value of <name><SSID of wifi profile></name>
<Name of wifi profile> = Name of profile shown to users. For example, enter <name>ContosoWiFi</name>.
<SSID of wifi profile> = Plain text of SSID. Does not need to be escaped. It could be <name>Your Company's Network</name>.
<nonBroadcast><true/false></nonBroadcast>
<Type of authentication> = Type of authentication used by the network, such as WPA2PSK.
<Type of encryption> = Type of encryption used by the network, such as AES.
<protected>false</protected> do not change this value, as true could cause device to expect an encrypted password and then try to decrypt it, which can result in a failed connection.
<password> = Plain text of the password to connect to the network
-->
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name><Name of wifi profile></name>
<SSIDConfig>
<SSID>
<hex>53534944</hex>
<name><SSID of wifi profile></name>
</SSID>
<nonBroadcast>false</nonBroadcast>
</SSIDConfig>
<connectionType>ESS</connectionType>
<connectionMode>auto</connectionMode>
<autoSwitch>false</autoSwitch>
<MSM>
<security>
<authEncryption>
<authentication><Type of authentication></authentication>
<encryption><Type of encryption></encryption>
<useOneX>false</useOneX>
</authEncryption>
<sharedKey>
<keyType>passPhrase</keyType>
<protected>false</protected>
<keyMaterial>password</keyMaterial>
</sharedKey>
<keyIndex>0</keyIndex>
</security>
</MSM>
</WLANProfile>
基于 EAP 的 Wi-Fi 配置文件示例
以下示例包含基于 EAP 的 Wi-Fi 配置文件的 XML 代码。 该示例显示了正确的格式,并提供更多详细信息。 但它只是一个示例,并非推荐的环境配置。
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
<name>testcert</name>
<SSIDConfig>
<SSID>
<hex>7465737463657274</hex>
<name>testcert</name>
</SSID>
<nonBroadcast>true</nonBroadcast>
</SSIDConfig>
<connectionType>ESS</connectionType>
<connectionMode>auto</connectionMode>
<autoSwitch>false</autoSwitch>
<MSM>
<security>
<authEncryption>
<authentication>WPA2</authentication>
<encryption>AES</encryption>
<useOneX>true</useOneX>
<FIPSMode xmlns="http://www.microsoft.com/networking/WLAN/profile/v2">false</FIPSMode>
</authEncryption>
<PMKCacheMode>disabled</PMKCacheMode>
<OneX xmlns="http://www.microsoft.com/networking/OneX/v1">
<cacheUserData>false</cacheUserData>
<authMode>user</authMode>
<EAPConfig>
<EapHostConfig xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
<EapMethod>
<Type xmlns="http://www.microsoft.com/provisioning/EapCommon">13</Type>
<VendorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorId>
<VendorType xmlns="http://www.microsoft.com/provisioning/EapCommon">0</VendorType>
<AuthorId xmlns="http://www.microsoft.com/provisioning/EapCommon">0</AuthorId>
</EapMethod>
<Config xmlns="http://www.microsoft.com/provisioning/EapHostConfig">
<Eap xmlns="http://www.microsoft.com/provisioning/BaseEapConnectionPropertiesV1">
<Type>13</Type>
<EapType xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV1">
<CredentialsSource>
<CertificateStore>
<SimpleCertSelection>true</SimpleCertSelection>
</CertificateStore>
</CredentialsSource>
<ServerValidation>
<DisableUserPromptForServerValidation>false</DisableUserPromptForServerValidation>
<ServerNames></ServerNames>
</ServerValidation>
<DifferentUsername>false</DifferentUsername>
<PerformServerValidation xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">false</PerformServerValidation>
<AcceptServerName xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">false</AcceptServerName>
<TLSExtensions xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2">
<FilteringInfo xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV3">
<AllPurposeEnabled>true</AllPurposeEnabled>
<CAHashList Enabled="true">
<IssuerHash>75 f5 06 9c a4 12 0e 9b db bc a1 d9 9d d0 f0 75 fa 3b b8 78 </IssuerHash>
</CAHashList>
<EKUMapping>
<EKUMap>
<EKUName>Client Authentication</EKUName>
<EKUOID>1.3.6.1.5.5.7.3.2</EKUOID>
</EKUMap>
</EKUMapping>
<ClientAuthEKUList Enabled="true"/>
<AnyPurposeEKUList Enabled="false">
<EKUMapInList>
<EKUName>Client Authentication</EKUName>
</EKUMapInList>
</AnyPurposeEKUList>
</FilteringInfo>
</TLSExtensions>
</EapType>
</Eap>
</Config>
</EapHostConfig>
</EAPConfig>
</OneX>
</security>
</MSM>
</WLANProfile>
从现有的 Wi-Fi 连接创建 XML 文件
还可以从现有的 Wi-Fi 连接创建 XML 文件。 在 Windows 计算机上,使用以下步骤:
为导出的 Wi-Fi 配置文件创建本地文件夹,例如 c:\WiFi。
以管理员身份打开命令提示符(右键单击
cmd
>“以管理员身份运行”)。运行
netsh wlan show profiles
。 将列出所有配置文件的名称。运行
netsh wlan export profile name="YourProfileName" folder=c:\Wifi
。 此命令在 c:\Wifi 中创建一个名为Wi-Fi-YourProfileName.xml
的文件。如果要导出包含预共享密钥的 Wi-Fi 配置文件,请将 添加到
key=clear
命令。 参数key=clear
以纯文本形式导出密钥,这是成功使用配置文件所必需的:netsh wlan export profile name="YourProfileName" key=clear folder=c:\Wifi
如果导出的 Wi-Fi 配置文件
<name></name>
元素包含空格,则可能会在分配时返回错误ERROR CODE 0x87d101f4 ERROR DETAILS Syncml(500)
。 发生此问题时,配置文件会在\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces
中列出,并显示为已知网络。 但是,在“由 ... 管理的区域”URI 中不能成功显示为托管策略。要解决此问题,请删除空格。
拥有 XML 文件后,将 XML 语法复制并粘贴到 OMA-URI 设置 >数据类型中。 创建自定义配置文件(本文中)列出了步骤。
提示
\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\{guid}
还包括 XML 格式的所有配置文件。
最佳做法
在部署具有 PSK 的 Wi-Fi 配置文件前,请确认该设备能否直接连接到终结点。
在轮换密钥(密码或通行短语)时,预计故障时间并进行部署规划。 应:
确认设备具有与 Internet 的备用连接。
例如,最终用户可以切换回来宾 WiFi(或其他一些 WiFi 网络)或者必须有手机网络连接来与 Intune 通信。 额外的连接允许用户在设备上更新公司 Wi-Fi 配置文件时接收策略更新。
在非工作时间推送新的 Wi-Fi 配置文件。
警告用户连接可能受到影响。