33 lines
1.5 KiB
PowerShell

# Copyright (C) 2010 Intel Corporation
########################################
# Perform local setup flow #
########################################
# Get digest realm
$generalSettingsRef = $wsmanConnectionObject.NewReference("SELECT * FROM AMT_GeneralSettings WHERE InstanceID='Intel(r) AMT: General Settings'")
$generalSettingsInstance = $generalSettingsRef.Get()
$digestRealm = $generalSettingsInstance.GetProperty("DigestRealm")
# Compute MD5
$userName ="admin"
$newPassword = "Admin!98"
$hash = $userName +":"+ $digestRealm +":"+ $newPassword
$cryptoServiceProvider = [System.Security.Cryptography.MD5CryptoServiceProvider]
$md5Algorithm = new-object $cryptoServiceProvider
$networkAdminPassword = New-Object System.Text.StringBuilder
$md5Algorithm.ComputeHash([Char[]]$hash) | % { [void] $networkAdminPassword.Append($_.ToString("x2")) } # Convert to hex format
# Invoke method
$hostBasedSetupRef = $wsmanConnectionObject.NewReference("SELECT * FROM IPS_HostBasedSetupService WHERE Name='Intel(r) AMT Host Based Setup Service'")
$inputObject = $hostBasedSetupRef.CreateMethodInput("Setup")
$inputObject.SetProperty("NetAdminPassEncryptionType", "2") #2 = MD5
$inputObject.SetProperty("NetworkAdminPassword", $networkAdminPassword)
$outputObject = $hostBasedSetupRef.InvokeMethod($inputObject)
$returnValue = $outputObject.GetProperty("ReturnValue")
IF($returnValue.ToString() -ne "0")
{
Write-Host -ForegroundColor Red "Failed to perform method Setup, with error:"$returnValue.ToString()
Return
}