共用方式為


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

定義網路金鑰或傳遞片語。 如果 protectedtrue,則金鑰內容會加密;否則,就不會加密金鑰內容。 加密金鑰內容以十六進位形式表示。

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>

SSIDPrefix

WLAN_v2 schema