CollapseAll image

Enumerate Existing Wireless Profiles

The following steps describe how to enumerate and examine the currently defined wireless profiles. The profiles are contained in instances of CIM_WifiEndpointSettings and other objects that may be associated to the instance:CIM_IEEE8021xSettings, and CIM_IEEE8021xSettings, and AMT_PublicKeyCertificate.

Enumerate User Profiles

1.  Enumerate the instances of CIM_WiFiEndpointSettings.

2.     In each instance of CIM_WiFiEndpointSettings , the InstanceID parameter which starts with “Intel(r) AMT:WiFi Endpoint User Settings” signifies a user profile.

3.     Retrieve the user profile name.  The other parameters of  of CIM_WiFiEndpointSettings are write only.

Click here for a snippet demonstrating this step

You can execute this snippet by inserting it into the execution template found here.

  

$wifiEndpointSettingsRef =$wsmanConnectionObject.NewReference("CIM_WiFiEndpointSettings")

foreach($wifiEndpointSettingsItem in$wifiEndpointSettingsRef.Enumerate())

{

    $wifiEndpointSettingsInstance =$wifiEndpointSettingsItem.Object

    $name =$wifiEndpointSettingsInstance.GetProperty("ElementName")

    $priority =$wifiEndpointSettingsInstance.GetProperty("Priority")

    $ssid =$wifiEndpointSettingsInstance.GetProperty("SSID")

    $encryptionMethod =$wifiEndpointSettingsInstance.GetProperty("EncryptionMethod")

    $authenticationMethod =$wifiEndpointSettingsInstance.GetProperty("AuthenticationMethod")

}

 

 

Enumerate Admin Profiles

1.  Enumerate the instances of CIM_WiFiEndpointSettings.

2.     In each instance of CIM_WiFiEndpointSettings , the InstanceID parameter which starts with “Intel(r) AMT:WiFi Endpoint Endpoint Settings” signifies an admin profile.

3.     Retrieve the profile settings, including:

a.  Name (used as profile name)

b.  Priority

c.  SSID

d.  EncryptionMethod

e.  AuthenticationMethod

Click here for a snippet demonstrating this step

You can execute this snippet by inserting it into the execution template found here.

  

$wifiEndpointSettingsRef =$wsmanConnectionObject.NewReference("CIM_WiFiEndpointSettings")

foreach($wifiEndpointSettingsItem in$wifiEndpointSettingsRef.Enumerate())

{

    $wifiEndpointSettingsInstance =$wifiEndpointSettingsItem.Object

        if( $wifiEndpointSettingsInstance.GetProperty("InstanceID").ToString().StartsWith("Intel(r) AMT:WiFi Endpoint Settings"))

    {

 

    $name =$wifiEndpointSettingsInstance.GetProperty("ElementName")

    $priority =$wifiEndpointSettingsInstance.GetProperty("Priority")

    $ssid =$wifiEndpointSettingsInstance.GetProperty("SSID")

    $encryptionMethod =$wifiEndpointSettingsInstance.GetProperty("EncryptionMethod")

    $authenticationMethod =$wifiEndpointSettingsInstance.GetProperty("AuthenticationMethod")

 }

}

 

 

 

Examine IEEE802.1 Profile Settings

1.  To find IEEE802.1x settings associated with a profile, from the CIM_WiFiEndpointSettings instance, traverse the CIM_ConcreteComponent association using the PartComponent property to find the instance of CIM_IEEE8021xSettings.

2.     Examine the CIM_IEEE8021xSettings properties, such as AuthenticationProtocol, RoamingIdentity, and ServerCertificateName.

Click here for a snippet demonstrating this step

You can execute this snippet by inserting it into the execution template found here.

  

# Create a reference to the CIM_WiFiEndpointSettings instance.

$wifiEndpointsettingsRef =$wsmanConnectionObject.NewReference("CIM_WiFiEndpointSettings")

foreach($wifiEndpointSettingsItem in$wifiEndpointsettingsRef.Enumerate())

{

$wifiEndpointSettingsInstance =$wifiEndpointSettingsItem.Object

    if( $wifiEndpointSettingsInstance.GetProperty("InstanceID").ToString().StartsWith("Intel(r) AMT:WiFi Endpoint Settings"))

    {

    $wifiEndpointSettingsRef =$wifiEndpointSettingsItem.Object.ToReference("InstanceID")

    $concreteComponentRef =$wsmanConnectionObject.NewReference("CIM_ConcreteComponent")

    $concreteComponentRef.AddSelector("GroupComponent",$wifiEndpointSettingsRef)

    # Traverse to the CIM_ConcreteComponent instances that are connected to the CIM_WiFiEndpointSettings instance.

    try

    {

          foreach($concreteComponentItem in$concreteComponentRef.Enumerate("http://schemas.dmtf.org/wbem/wsman/1/wsman/SelectorFilter",$null))

          {

                # For each instance, check if it is associated to the CIM_IEEE8021xSettings instance.

          if($concreteComponentItem.Object.GetProperty("PartComponent").IsA("CIM_IEEE8021xSettings"))

                {

                      # Get the CIM_IEEE8021xSettings using its EPR.

                      $ieee8021xSettingsInstance =$concreteComponentItem.Object.GetProperty("PartComponent").Ref.Get()

                      $authenticationProtocol =$ieee8021xSettingsInstance.GetProperty("AuthenticationProtocol")

                      $roamingIdentity =$ieee8021xSettingsInstance.GetProperty("RoamingIdentity")

                      $serverCertificateName =$ieee8021xSettingsInstance.GetProperty("ServerCertificateName")

                }

          }

    }

    # Continue to the next loop.

    catch{}

  }

}

 

 

3.     To find certificate settings for this profile, from the instance of CIM_IEEE8021xSettings, traverse the CIM_CredentialContext association to find instances of AMT_PublicKeyCertificate.

4.     Retrieve the instance and examine the CIM_IEEE8021xSettings properties, such as AuthenticationProtocol, RoamingIdentity and ServerCertificateName properties.

Instance Diagram

Classes Used in This Flow

SDK Sample

If there is a sample demonstrating this flow, it is included in the SDK installation file. See SDK Installation Layout for details.

 

See Also:

   Wireless Profile Parameters

Copyright © 2006-2022, Intel Corporation. All rights reserved.