Intel Developer Zone Blogshttps://origin-software.intel.com/en-us/blogs/17179
Blog posts from the Intel Developer Zone community.enRemote Screen Blanking with Intel AMT 10https://origin-software.intel.com/en-us/blogs/2015/02/20/remote-screen-blanking-with-intel-amt-10
<p align="center"><a href="https://software.intel.com/sites/default/files/managed/44/b6/IntelvPro.png"><img alt="Intel vPro" title="Intel vPro" height="154" width="250" src="https://software.intel.com/sites/default/files/managed/44/b6/IntelvPro.png" /></a></p>
<p>Remote Screen Blanking (RSB) is a feature introduced in Intel Active Management Technology (AMT) version 10.0 to help with those situations where you want the display of a client system to be off while remote operations are being performed on it. Prime candidates would be publically visible systems like digital signage, kiosks, and Automated Teller Machines but other systems within an enterprise may benefit from this feature too. RSB only affects the display and does not block any local user input like mouse, keyboard, touchscreen, or power button. Scenarios where patches are being installed, IDE-redirection sessions are in progress, or BIOS settings are being changed would typically be better if not displayed to the public or an unknown audience. RSB provides the curtain for an IT administrator to perform remote operations with discretion.</p>
<p>Before you get started using RSB, there are some prerequisites that must be met:</p>
<ul><li>
<p>Must have Intel AMT version 10.0 or later</p>
</li>
<li>
<p>User Consent must be Off on the client</p>
</li>
<li>
<p>Must be Enabled before use</p>
</li>
<li>
<p>Must be allowed in the firmware</p>
</li>
</ul><p>The first three items can be controlled by an administrator via software but the last one is controlled by the system manufacturer. The Intel AMT version number can be queried via API. User Consent is always needed for systems configured in Client Control Mode and optional in Admin Control mode. To be able to utilize RSB the system must be configured into Admin Control Mode with User Consent disabled. Finally you can use an API to Enable RSB. If enabling RSB fails with an Internal Processing error then most likely it is not available in the firmware installed on that system by the OEM.</p>
<p>Once you have satisfied the prerequisites you can incorporate RSB into your usages. The class <a href="https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/HTMLDocuments/WS-Management_Class_Reference/IPS_ScreenConfigurationService.html">IPS_ScreenConfigurationService</a> provides the interface for controlling the feature via one method and three properties.</p>
<p>The properties:</p>
<ul><li>
<p>EnabledState – read/write property that allows you to query and enable or disable the state of RSB.</p>
</li>
<li>
<p>CurrentState – read only property that provides the current state of an RSB session as either open/blanking or closed/not-blanking.</p>
</li>
<li>
<p>RemainingConsecutiveRebootsNum – read only property that indicates the number of reboots that remain that will allow the blanking to persist. The initial value is set in the SetSesssionState method. If this number is 0 then a reboot will cause the blanking session to stop and the display to be shown again. The value can also be 1 through 3 which would allow a blanking session to continue during a reboot, which is useful for scenarios that require a reboot like Boot-to-BIOS or IDE-Redirection. Note that this works with resets only, a shutdown or hibernate will cancel a blanking session and reset this value to 0. Putting the system in Connected Standby will not change any RSB settings.</p>
</li>
</ul><p>The method:</p>
<ul><li>
<p>SetSessionState – takes two parameters to allow you to turn screen blanking On or Off and set a value for the number of reboots that it will persist.</p>
</li>
</ul><p>The PowerShell script below provides snippets of code that show how to utilize the RSB feature. For information on running PowerShell scripts with the Intel vPro module please refer to the <a href="https://software.intel.com/en-us/articles/download-the-latest-intel-amt-software-development-kit-sdk/">AMT SDK</a> and related <a href="https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/HTMLDocuments/powershelltemplate.htm">documentation</a>.</p>
<p>After establishing a connection (note: you will need to enter the proper credentials and machine address for your client system), the script checks the version of AMT which must be 10.0 or greater to have the feature. It then checks if User Consent is required on the system, which must be false for RSB to work.</p>
<p>Next there is a section that reports the current properties of RSB on the client. If the feature is not enabled, then it will enable it. The other properties are queried to show the current Blanking state and the number of reboots for which the current session will persist.</p>
<p>The final section illustrates how to start a screen blanking session that would persist through two reboots. It then pauses for 20 seconds and stops the screen blanking session.</p>
<div>
<p>This should provide all the items you need to start using the feature. If you have questions please post them to the <a href="https://software.intel.com/en-us/forums/intel-business-client-software-development">forum</a>.</p>
</div>
<hr /><p># Begin flow template</p>
<p>Import-Module 'IntelvPro'</p>
<p>########################################</p>
<p># Create a Wsman Connection Object #</p>
<p>########################################</p>
<p>$wsmanConnectionObject = new-object 'Intel.Management.Wsman.WsmanConnection'</p>
<p>$wsmanConnectionObject.Username = "admin"</p>
<p>$wsmanConnectionObject.Password = "**********"</p>
<p>$wsmanConnectionObject.Address = "http://" + "192.168.10.108" + ":16992/wsman"</p>
<p>########################################</p>
<p>function GetCoreVersion</p>
<p>{</p>
<p> $softwareIdentityRef = $wsmanConnectionObject.NewReference("SELECT * FROM CIM_SoftwareIdentity WHERE InstanceID='AMT FW Core Version'")</p>
<p> $softwareIdentityInstance = $softwareIdentityRef.Get()</p>
<p> $versionString = $softwareIdentityInstance.GetProperty("VersionString")</p>
<p> return $versionString</p>
<p>}</p>
<p>########## Check the pre-requisites ##########</p>
<p>#Check the AMT version; Need AMT 10 or greater for Remote Screen Blanking</p>
<p>Write-Host "AMT version is: " $(GetCoreVersion)</p>
<p>#Check if User Consent is required; Remote Screen Blanking will not operate when User Consent is required</p>
<p>$optInServiceRef = $wsmanConnectionObject.NewReference("SELECT * FROM IPS_OptInService WHERE Name='Intel(r) AMT OptIn Service'")</p>
<p>$optInServiceInstance = $optInServiceRef.Get()</p>
<p>$optInRequired = $optInServiceInstance.GetProperty("OptInRequired")</p>
<p>Write-Host "User Consent Required: " $OptInRequired</p>
<p>########## Report the current properties and enable if needed ##########</p>
<p>#Read the configuration settings for Remote Screen Blanking which are in the class IPS_ScreenConfigurationService</p>
<p>$screenPropRef = $wsmanConnectionObject.NewReference("SELECT * FROM IPS_ScreenConfigurationService")</p>
<p>$screenPropInstance = $screenPropRef.Get()</p>
<p>#Check if Remote Screen Blanking is enabled; If it is not, then set it to enabled</p>
<p>$enabledState = $screenPropInstance.GetProperty("EnabledState")</p>
<p>Write-Host "Enabled state: " $enabledState</p>
<p>If ($enabledState.ToString() -eq "0")</p>
<p>{</p>
<p> Write-Host "Remote Screen Blanking was not enabled, so enabling it now"</p>
<p> $screenPropInstance.SetProperty("EnabledState", "1")</p>
<p> $screenPropRef.Put($screenPropInstance)</p>
<p>}</p>
<p>#Check if the screen is currently being blanked</p>
<p>$screenState = $screenPropInstance.GetProperty("CurrentState")</p>
<p>Write-Host "Screen state is (0=Not Blanked, 1=Blanked): " $screenState</p>
<p>#Check how many reboots can occur while maintaining an actively blanked screen</p>
<p>$rebootsRemaining = $screenPropInstance.GetProperty("RemainingConsecutiveRebootsNum")</p>
<p>Write-Host "Remaining reboots: " $rebootsRemaining</p>
<p>########## Blank the screen, pause, then un-blank the screen ##########</p>
<p>#Start blanking the screen with 2 reboots allowed, wait for 30 seconds, then stop blanking</p>
<p>$screenPropRef = $wsmanConnectionObject.NewReference("SELECT * FROM IPS_ScreenConfigurationService")</p>
<p>$screenPropInstance = $screenPropRef.Get()</p>
<p>$inputObject = $screenPropRef.CreateMethodInput("SetSessionState")</p>
<p>$inputObject.SetProperty("SessionState", "1")</p>
<p>$inputObject.SetProperty("ConsecutiveRebootsNum", "2")</p>
<p>$outputObject = $screenPropRef.InvokeMethod($inputObject)</p>
<p>$returnValue = $outputObject.GetProperty("ReturnValue")</p>
<p>Write-Host "Blank the screen. Return (0 = success): " $returnValue</p>
<p>Start-Sleep -s 20</p>
<p>$inputObject.SetProperty("SessionState", "0")</p>
<p>$inputObject.SetProperty("ConsecutiveRebootsNum", "0")</p>
<p>$outputObject = $screenPropRef.InvokeMethod($inputObject)</p>
<p>$returnValue = $outputObject.GetProperty("ReturnValue")</p>
<p>Write-Host "Stop blanking the screen. Return (0 = success): " $returnValue</p>
<p>########################################</p>
<p>Remove-Module 'IntelvPro'</p>
<p># End flow template</p>
Fri, 20 Feb 15 16:37:31 -0800Lance Atencio (Intel)541879New Features in Intel® Active Management Technology (AMT) 10https://origin-software.intel.com/en-us/blogs/2014/08/18/new-features-in-intel-active-management-technology-amt-10
<p>While Intel did not release an <span>Intel</span><span><span>®</span> </span><span>vPro</span><sup><span>TM</span></sup><span> Technology desktop </span>with <span> ME (I</span><span>ntel</span><span><span>® </span></span><span>Manageability Engine) Firmware </span>v10, the later versions of firmware are backwards compatible as early as Intel<sup><span>® </span></sup> 7 series chipsets (ME 8.x originally). I<span>ntel</span><sup><span>® </span></sup> <span>Active Management Technology (AMT) </span>is part of the corporate (larger) version of ME firmware and provides most of the m<span>anageability functions of of </span><span>Intel</span><span><span>®</span> </span><span>vPro</span><sup><span>TM</span></sup><span> Technology, so let's look at what's new in AMT 10.</span></p>
<p><span>Important Note: ALWAYS use the ME firmware and MEI driver supplied by your motherboard manufacturer.</span></p>
<p>The <span><strong>most important change: </strong> </span><span>OpenSSL is now implemented with no heartbeat flag. So on systems being upgraded to AMT10, please <strong>revoke and reissue the certificates and change passwords.</strong> </span></p>
<p><span>Other Improvements: </span></p>
<ul><li><span>Provisioning using the secured FQDN is now supported in both Admin and Client Control Modes </span></li>
</ul><ul><li><span>Screen Blanking (of the remote client console screen) can be used while performing administrative KVM activities. (Available in the HLAPI and KVM app tools)</span></li>
</ul><ul><li><span>Graceful power shutdown is supported on Windows* Vista, 7 and 8 for 32 and 64-bit platforms, including Windows 8 Connected Standby*.<br />
The graceful power events will generate UNS events. </span><br />
</li>
<li>Systems can be woken from Windows Connected Standby and Instant Go, although there is no implementation to put the system INTO CS/Instant Go.
<ul><li>Use <a href="///C:/Users/cculbert/Documents/10.0.0.20/DOCS/Implementation%20and%20Reference%20Guide/HTMLDocuments/WS-Management_Class_Reference/IPS_PowerManagementService.htm" rel="nofollow">IPS_PowerManagementService</a><span>.</span><a href="#OSPowerSavingState" rel="nofollow">OSPowerSavingState</a> to get the standby state.</li>
<li>Use <a href="///C:/Users/cculbert/Documents/10.0.0.20/DOCS/Implementation%20and%20Reference%20Guide/HTMLDocuments/WS-Management_Class_Reference/IPS_PowerManagementService.htm" rel="nofollow">IPS_PowerManagementService</a><span>.</span><a href="#RequestOSPowerSavingStateChange" rel="nofollow">RequestOSPowerSavingsState</a><span> </span>to wake the system<br />
</li>
</ul></li>
<li>The length of the root certificate can now be up to 2500 bytes<br />
</li>
<li>CILA alerts now provide the generating hostname and the reason for the UI connection. <br />
</li>
<li>The Real VNC* version is now 1.2.5</li>
</ul><p><span>. </span></p>
<p> </p>
<p> </p>
<p> </p>
Wed, 17 Sep 14 12:58:10 -0700Colleen Culbertson (Intel)520457