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 命名空間中的其他 10000 ssid。 V2 命名空間也支援 SSIDPrefix 元素。
並非所有專案都在每個設定檔中,因為有些元素是選擇性的。
下表列出此架構中的所有元素,並依名稱的字母順序排序。
元素 | 描述 |
---|---|
AssociatedPlan | 包含訂閱者資料方案的名稱。 它必須符合相同 XML 檔中方案的名稱屬性。 |
MSM | 針對 WLAN 上的此設定檔定義各種媒體專屬模組 (.MSM) 設定。 |
PMKCacheMode | 定義此設定檔是否要使用成對的主要金鑰 (PMK) 快取,以連接到 WLAN。 |
PMKCacheSize | 定義在用戶端上 (PMK) 快取的成對主要金鑰中的專案數。 必須是介於1到255(含)之間的值。 |
PMKCacheTTL | 定義將保留成對主要金鑰 (PMK) 快取的時間長度(以分鐘為單位)。 必須是介於5到1440(含)之間的值。 |
SSID | 包含 WLAN 的 SSID。 |
SSIDConfig | 為無線區域網路定義一個或多個服務組識別元 (SSID) 。 |
WLANProfile | 定義訂閱者的 WLAN 連線設定檔的屬性和安全性設定。 WLANProfile 是無線設定檔的唯一根項目。 |
authEncryption | 定義要在 WLAN 上用於此設定檔的驗證和加密配對。 |
認證 | 定義此設定檔用來連接到 WLAN 的驗證方法。 |
加密 | 定義此設定檔用來連接到 WLAN 的資料加密類型。 |
hex | 以十六進位格式定義無線區域網路的 SSID。 |
keyIndex | 定義應使用哪個金鑰索引來加密無線流量。 索引鍵索引只會在networkKeykeyType時使用。 當 sharedKey 存在時,預設值為0。 必須是介於0到3(含)之間的值。 |
keyMaterial | 定義網路金鑰或傳遞片語。 如果 protected 為 true,則金鑰內容會加密;否則,就不會加密金鑰內容。 加密金鑰內容以十六進位形式表示。 |
keyType | 定義共用金鑰是否為網路金鑰或密碼片語。 |
SSID 中 (的名稱) | 以英數位元格式定義無線區域網路的 SSID。 |
名稱 (類型: NameType) | 定義無線局域網路設定檔的區分大小寫名稱。 |
preAuthMode | 定義用戶端是否會使用預先驗證。 |
preAuthThrottle | 定義嘗試在鄰近存取點上嘗試 (AP) 的預先驗證嘗試次數。 必須是介於1到16(含)之間的值。 |
保護 | 若 為 true,則會加密共用金鑰。 否則為 false。 |
安全 | 在 WLAN 上定義此設定檔的各種安全性設定。 |
sharedKey | 定義此設定檔用來連接到 WLAN 的選用共用金鑰資訊。 |
useOneX | 若 為 true,此設定檔會使用 802.1 x 驗證來連接到 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>
相關主題