WLAN 架构
WLAN 架构定义元素,这些元素用于描述订阅者连接到 WLAN (局域网) 。
WLAN 架构中所有元素均在 命名空间 *
http://www.microsoft.com/networking/CarrierControl/WLAN/v1*
中。
架构WLAN_v2命名空间中http://www.microsoft.com/networking/CarrierControl/WLAN/v2
定义其他元素,在 Windows 8.1、Windows Server 2012 R2 和更高版本上受支持。
WLAN 架构中的 SSIDConfig 元素在 v1 命名空间中最多支持 25 个 SSID,在 v2 命名空间中最多支持 10,000 个 SSID。 v2 命名空间还支持 SSIDPrefix 元素。
并非所有元素都每个配置文件中,因为某些元素是可选的。
下表列出了此架构中按名称按字母顺序排序的所有元素。
元素 | 说明 |
---|---|
AssociatedPlan | 包含订阅者的数据计划的名称。 它必须匹配同 一 XML 文档中 计划的 Name 属性。 |
MSM | 定义各种特定于媒体的模块 (MSM) WLAN 上此配置文件的设置。 |
PMKCacheMode | 定义此配置文件是否 (PMK) 对主密钥来连接到 WLAN。 |
PMKCacheSize | 定义客户端上 PMK (配对主密钥) 条目数。 必须是介于 1 和 255(含)之间的值。 |
PMKCacheTTL | 定义将保留 PMK 的成对主密钥 (的时间长度) 分钟。 必须是介于 5 和 1440(含)之间的值。 |
SSID | 包含 WLAN 的 SSID。 |
SSIDConfig | 为无线 LAN 定义一个或多个 (SSID) 标识符。 |
WLANProfile | 定义订阅服务器 WLAN 连接配置文件的属性和安全设置。 WLANProfile 是无线配置文件的唯一根元素。 |
authEncryption | 定义在 WLAN 上用于此配置文件的身份验证和加密对。 |
身份验证 | 定义此配置文件用于连接到 WLAN 的身份验证方法。 |
加密 | 定义此配置文件用于连接到 WLAN 的数据加密类型。 |
hex | 以十六进制格式定义无线 LAN 的 SSID。 |
keyIndex | 定义应该使用哪个密钥索引来加密无线流量。 keyIndex 仅在 keyType 为 networkKey 时 使用。 存在 sharedKey 时,默认值为 0。 必须是介于 0 和 3(含)之间的值。 |
keyMaterial | 定义网络密钥或通行短语。 如果 protected为 true,则密钥材料已加密;否则,密钥材料未加密。 加密密钥材料以十六进制形式表示。 |
keyType | 定义共享密钥是网络密钥还是通行短语。 |
SSID (中的名称) | 以字母数字格式定义无线 LAN 的 SSID。 |
name (type: NameType) | 定义无线 LAN 配置文件的区分大小写的名称。 |
preAuthMode | 定义客户端是否使用预身份验证。 |
preAuthThrottle | 定义在 AP 应用程序上的相邻访问点上尝试的预身份验证 () 。 必须是介于 1 和 16(含)之间的值。 |
受保护 | 如果 为 true,则对共享密钥进行加密。 否则为 false。 |
security | 定义 WLAN 上此配置文件的各种安全设置。 |
sharedKey | 定义此配置文件用于连接到 WLAN 的可选共享密钥信息。 |
useOneX | 如果 为 true,则此配置文件将使用 802.1X 身份验证连接到 WLAN。 否则为 false。 |
完整的 WLAN 架构如下所示:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema targetNamespace="http://www.microsoft.com/networking/CarrierControl/WLAN/v1"
elementFormDefault="qualified"
xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v1"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:base="http://www.microsoft.com/networking/CarrierControl/Base/v1">
<xs:import namespace="http://www.microsoft.com/networking/CarrierControl/Base/v1" />
<!-- WISPR Credentials in separate schema; uses xs:any tag below -->
<xs:element name="WLANProfile" type="CarrierWLANProfile"/>
<xs:complexType name="CarrierWLANProfile">
<xs:sequence>
<!-- Profile name is required. -->
<xs:element name="name" type="base:NameType" />
<xs:element name="Associated Plan" type="xs:string" minOccurs="0"/>
<!-- SSIDs are required. -->
<xs:element name="SSIDConfig" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:annotation>
<xs:documentation>
This element supports up to 25 SSIDs in the v1 namespace and up to additional 10000 SSIDs in the v2 namespace.
The v2 namespace also supports SSID prefixes.
</xs:documentation>
</xs:annotation>
<xs:element name="SSID" maxOccurs="25">
<xs:complexType>
<!-- Either Hex or named SSID must be present. -->
<xs:choice>
<xs:element name="hex">
<xs:simpleType>
<xs:restriction base="xs:hexBinary">
<xs:minLength value="1" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<!-- SSID and SSIDPrefix elements from v2 namespace can be set here.
<xs:element name="SSID" minOccurrence="0" maxOccurrence="10000"
namespace="http://www.microsoft.com/networking/WLAN/profile/v2"/>
<xs:element name="SSIDPrefix" minOccurrence="0" maxOccurrence="32"
namespace="http://www.microsoft.com/networking/WLAN/profile/v2"/>
-->
<!-- extension point for other namespaces -->
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- wireless LAN MSM settings -->
<xs:element name="MSM" minOccurs="0">
<xs:complexType>
<xs:sequence>
<!-- security settings -->
<xs:element name="security" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="authEncryption">
<xs:complexType>
<xs:sequence>
<!-- valid authentication methods -->
<xs:element name="authentication">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="open" />
<xs:enumeration value="shared" />
<xs:enumeration value="WPA" />
<xs:enumeration value="WPAPSK" />
<xs:enumeration value="WPA2" />
<xs:enumeration value="WPA2PSK" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- valid encryption methods -->
<xs:element name="encryption">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="WEP" />
<xs:enumeration value="TKIP" />
<xs:enumeration value="AES" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- flag indicating use of 802.1X -->
<xs:element name="useOneX" type="xs:boolean" minOccurs="0" />
<!-- extension point for other namespaces; allowed for OneX, etc. -->
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- Optional MSM security settings. -->
<!-- there is no default value for sharedKey if absent -->
<xs:element name="sharedKey" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="keyType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="networkKey" />
<xs:enumeration value="passPhrase" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="protected" type="xs:boolean" />
<xs:element name="keyMaterial" type="xs:string" />
<!-- extension point for other namespaces -->
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- the default value is 0 when the shared key is present -->
<xs:element name="keyIndex" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0" />
<xs:maxInclusive value="3" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- For WPA2, the default value is "enabled"
for all others, the default value is "disabled"
-->
<xs:element name="PMKCacheMode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="disabled" />
<xs:enumeration value="enabled" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- the default value is 720 minutes -->
<xs:element name="PMKCacheTTL" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="5" />
<xs:maxInclusive value="1440" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- the default value is 128 entries -->
<xs:element name="PMKCacheSize" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="1" />
<xs:maxInclusive value="255" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- the default value is "disabled" -->
<xs:element name="preAuthMode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="disabled" />
<xs:enumeration value="enabled" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- the default value is 3 times -->
<xs:element name="preAuthThrottle" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="1" />
<xs:maxInclusive value="16" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<!-- extension point for other namespaces -->
<!-- this is the insertion point for OneX and HotspotAuth namespaces -->
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- extension point for other namespaces -->
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Priority" type="base:Priority" default="5"/>
</xs:complexType>
<xs:element name="WLANProfile" type="CarrierWLANProfile"/>
</xs:schema>
<!-- provisioning_wlan_v2 -->
<!-- The following shows the new elements in version 2 that can be included -->
<?xml version="1.0" encoding="utf-8"?>
<xs:schema targetNamespace="http://www.microsoft.com/networking/CarrierControl/WLAN/v2"
elementFormDefault="qualified"
xmlns="http://www.microsoft.com/networking/CarrierControl/WLAN/v2"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
<xs:element name="SSID">
<xs:complexType>
<!-- Either Hex or named SSID must be present. -->
<xs:choice>
<xs:element name="hex">
<xs:simpleType>
<xs:restriction base="xs:hexBinary">
<xs:minLength value="1" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="SSIDPrefix">
<xs:complexType>
<!-- Either Hex or named SSID must be present. -->
<xs:choice>
<xs:element name="hex">
<xs:simpleType>
<xs:restriction base="xs:hexBinary">
<xs:minLength value="4" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="4" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
相关主题