serverRoom/amt-sdk-20-0-0-1/IntelvProModule/PS_Snippets/8021x Profile Configuration/Get the CredentialContext used by the Active Profile.ps1

22 lines
1.3 KiB
PowerShell

# Create a reference to AMT_8021XProfile instance.
$8021XProfileRef = $wsmanConnectionObject.NewReference("SELECT * FROM AMT_8021XProfile WHERE InstanceID='Intel(r) AMT 802.1x Profile 0'")
$8021XProfileInstance = $8021XProfileRef.Get()
$8021xCredentialContextRef = $wsmanConnectionObject.NewReference("AMT_8021xCredentialContext")
$8021xCredentialContextRef.AddSelector("ElementProvidingContext", $8021XProfileRef)
# Traverse to the AMT_8021xCredentialContext instances that are connected to the AMT_8021XProfile.
foreach($8021xCredentialContextItem in $8021xCredentialContextRef.Enumerate("http://schemas.dmtf.org/wbem/wsman/1/wsman/SelectorFilter", $null))
{
# For each instance, check if it is associated to the AMT_PublicKeyCertificate instance.
if($8021xCredentialContextItem.Object.GetProperty("ElementInContext").IsA("AMT_PublicKeyCertificate"))
{
# For root certificate:
#Get the AMT_PublicKeyCertificate object using its EPR.
$publicKeyCertificateInstance = $8021xCredentialContextItem.Object.GetProperty("ElementInContext").Ref.Get()
if($publicKeyCertificateInstance.GetProperty("TrustedRootCertficate") -like "true")
{
$elementName = $publicKeyCertificateInstance.GetProperty("ElementName")
$x509Certificate = $publicKeyCertificateInstance.GetProperty("X509Certificate")
$issuer = $publicKeyCertificateInstance.GetProperty("Issuer")
}
}
}