SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Confidential 1
EM 8.5 Deep Dive
1
David Allen
Product Manager
David.Allen@appsense.com
Environment Manager 8.5 highlights
• Biggest overhaul of the Console since 8.1
• New more reliable logon trigger mechanism
• Desktop Settings receives the biggest changes
• Removed or simplified overly complex functionality
• Numerous issues addressed that couldn’t be
addressed in version 8.4
Common problems addressed in EM 8.5
• Changing the client configuration mid-session
• No way to personalize non-exportable certificates
• Lack of support for personalizing user mapped network drives
• No support for capturing individual files or registry values
• Personalizing Windows Explorer views and navigation settings
• Capturing Windows and App Credentials inside EM Personalization
• Desktop Settings problems across Windows versions and architectures (x86/x64)
• Having to rollback all Desktop Settings, not just the those that may have become corrupted
• Not being able to use environment and session variables in conditions and actions
• Desktop, Task Bar and Start Menu links to non-existent applications
• Using SQL scripts to clean out ‘stale’ EM personalization data
• No built-in templates for Office 2013 and Office 365
• Writing scripting loops to wait for network connection
• Scripting Robocopy (instead of using Copy function)
• Find and Replace didn’t allow in-place editing
… and many more!
New Logon triggers
• Logon split into 3 sub-triggers
• Pre-Session – new trigger that fires once the user profile has been
created but before the user session is started
• Pre-Desktop – replacement for the Logon trigger in previous versions
and fires slightly earlier during the logon process
• Desktop Created – new trigger that fires once the desktop shell has been
created
Deterministic triggers – behind the scenes
• Logon and Logoff events now use Windows Notification
Packages (XP/WS2K3) or SysNotify (Vista/WS2K8 onwards)
• EM is now part of the logon chain – no race conditions
• No longer reliant on Group Policy for logoff
• Shutdown using a pre-shutdown event from the SCM
• No longer reliant on Group Policy
• Session Lock/Unlock, Connect/Disconnect now use SCM events
• New ‘Network Available’ trigger, fires after Computer Startup,
uses Network Location Awareness.
S
New Logon trigger – upgrades
• Config upgrades – prompts for upgrades
• Yes – upgrades the configuration to 8.5 and the logon triggers
• No – upgrades the configuration to 8.5 but not the logon triggers
• Upgrading shows the new sub-triggers
• Advanced Configuration Settings provides the option to downgrade to
legacy logon triggers, should you encounter a problem during upgrades
• Downgrading converts sub-triggers to nodes
• No fixes provided to legacy logon triggers, backward compatibility only
• Switching between modes requires a client system restart
• New config won’t be loaded until the rebooted
New Logon trigger – Logon Messages
Network Available trigger
• Added to compliment Computer Startup trigger
• Numerous reports of ‘wait for network’ loops in startup trigger
• (Vista, Win7, Win8) uses Network List Manager (NLM) and
triggers when “Identified” state of any network received
• Windows Firewall uses this to classify network, Public, Private, Domain
• (WinXP) uses of the Windows Network Location Awareness API
to obtain the network events for Network Available.
• More primitive than NLM, but works along the same lines, used by
Windows for Firewall Policy
• Network Available is not triggered if the service is restarted
Mid-Session config change
• Difficult problem to solve safely– don’t be too clever 
• Immediate, User Logon or Computer Startup
• Switching modes possible at anytime
• Client process “peeks” at the config to determine if it should be loaded,
if not set to “Immediate” then it is ignored
• Controlled by the manifest.xml in the configuration.aemp
• <enum name="ProductConfigChange" type="ConfigurationChangeType"
default="UserLogon" />
• Non 8.5 configs default to “Immediate”, previous behavior
• New 8.5 configs default to “User Logon”
Personalization Override
• It’s Fixed!
• Pre-8.5 uses copy operations inside personalization
• 8.5 uses a copy operation inside policy
• All the virtual file actions are run inside policy instead of inside the
Profile Module which was devoid of any of the environment or options
available inside the policy engine
S
EM Policy
Q&A
Windows Personalization
• Desktop Settings + Session Data = Windows Personalization
• Configurable outside of Personalization Groups
• Uses the same paradigm as Applications
• Stores Windows settings in user configurable collections which controls
the granularity of rollbacks
• Uses more flexible ‘EM Policy Conditions’ rather than the limited
inherit, shared and separate model per ‘Windows family’
• Provides specific device targeting
• Session Data = Custom Windows Setting
• Specify Files/Folders and Registry Keys/Values
• Select which Windows versions it applies to
Windows Personalization – under the hood
• Each group of Windows settings equates to one ‘bubble’
• Assigning to these to Personalization Groups, means multiple
‘bubbles’ per profile, but are encapsulated in one profile
• All ‘bubbles’ are therefore retrieved in one server round-trip
to improve performance – better than 8.4
• Personalization configuration now cached to improve
performance (metadata, policy and conditions cache)
• Changes to the groups, such as the addition or removal of Windows
settings or conditions will update the cache
Windows Personalization – Logon
• Client requests the configuration (config.aspx)
• ProfileConfig.xml, DesktopSettings3.xml and
DesktopSettingsConditions.xml are downloaded (compressed)
• DesktopSettings3.xml contains Windows Personalization
definitions
• Fixed meta-data for the OOB fixed windows settings, representing
which registry keys/file paths are valid on each Windows version
• DesktopSettingsConditions.xml is the EMX policy configuration
that applies to the Windows Settings Groups
• Contains a conditions node for each group of Windows settings
S
Windows Personalization – Logon (2)
• DesktopSettingsConditions.xml is loaded using the policy
“ConfigurationManager”
• Effectively this is loaded into a new trigger named
“DESKTOP_SETTINGS_CONDITIONS”
• The policy execution engine trigger and associated nodes are created
• The policy execution engine is then used to
• Register a node completion callback, which is fired for each group of
Windows settings, when complete
• Initiates execution of the DESKTOP_SETTINGS_CONDITIONS trigger
• Executes each node on a separate thread (as per usual with policy triggers)
• For each callback that completes with a positive result, the group of Windows
settings is recorded in a list
S
Windows Personalization – Logon (3)
• The list of recorded Windows Settings Groups is passed over to the
synchronizer in order to make a request for the required groups
• The synchronizer creates a new file in the cache called
AppSenseFileFilter.xml
• Contain a comma separated list of WSG’s to fetch in the profile –
conditions excluded WSG’s that are not relevant
• Performs a sync down sending the new file for the filtered WSG list
• EMPS performs a filtered query based on the file filter
• When the data arrives at the client, each fbr per WSG is applied to
the registry according to the Windows version
S
Windows Personalization – Logoff
• DesktopSettingsConditions.xml parsed again
• This will have been updated when the config poll is performed
• DESKTOP_SETTINGS_CONDITIONS trigger is run again.
• List of WSGs prepared and Desktop Cache is prepared for sync up
• Existing WSGs (at logon) are saved to a temporary area
• The Desktop Cache is cleared
• WSGs are saved to the cache from the real registry/file system using the list
prepared earlier
• Settings applicable by Windows version are added in to the FBR files
• Unreferenced files no longer used are deleted
• AppSenseFileFilter.xml created from list of WSGs
• Sync up to server
S
Windows Personalization – Config upgrades
• Clean installs match old 8.4 Desktop Settings
• Capture the same using conditions rather than ‘OS Family’ (shared/separate model)
• Pre-8.3 configs are not upgraded, use the same config as a clean install
• Post-8.3 upgrades the config – you don’t have to keep this, construct your own
• Personalization Groups using global Desktop Settings, which are Shared, are placed in
‘GlobalShared’ Group
• Personalization Groups using global Desktop Settings, which are Separate, are placed into
the groups: ‘GlobalXP’, ‘GlobalVista’, ‘GlobalWin7’ or ‘GlobalWin8’ Group
• Personalization Groups with group specific Desktop Settings get placed either in a
<PGName>_Shared group if Shared or <PGName>_OS group if marked as a separate
setting
• Session Data placed in SessionData WSGs
• One per Personalization Group if not global
• Certificates and Credential settings stored in a Security WSG
Windows Personalization – Data upgrades
• Continues to behave as it did previously
• Legacy Desktop Settings data is preserved
• Cannot change legacy personalization configuration
• Data conversion takes place once 8.5 agent deployed
• Converted to the WSG per Personalization Group
• Legacy data remains until you are ready to remove it
• Old Desktop Settings data is displayed in Personalization
Analysis as [Legacy]
Windows Personalization – Certificates & Credentials
• Certificates and Credentials managed separately
• Now Windows Settings in Windows Personalization
• New certificate functionality:
• Trusted Root certificates
• Non-Exportable Certificates
• Certificates with high security keys
• No user prompting accepting trusted root and high security certificates
• To resolve certificates held in the registry
• Trusted Installer ownership issues – solution was to hive these
• Incompatible between NT5 and NT6 – solution hive for each platform type
S
Windows Personalization
Q&A
Personalization Server – Multi-instance
• Install multiple named instances of EMPS on the same
machine
• Separate versions and separately patchable
• Each instance has a name (instance id), first install is
called “DEFAULT”
• Each instance requires a separate web site in IIS
Personalization Server – Multi-instance installation
Personalization Server – Multi-instance installation (2)
• Install instances of EMPS with the following msiexec command:
• msiexec /i <pathtomsi> INSTANCEID=<instancename>
TRANSFORMS=<tname> MSINEWINSTANCE=1 /quiet
where
pathtomsi is the full path of PersonalizationServer64.msi
tname is an internal transform name - values are “:I01” to “:I16”
instancename is the name you want to give the instance
• Alternatively use InstallerCmd.exe which can be found in the Bin
directory of a full installation
• E.g. InstallerCmd /i <pathtomsi> <instancename> [<optional parameters>]
• Up to 17 instances per server - default and I01 to I16.
Personalization Server – Multi-instance IIS config
• IIS needs to distinguish
between sites:
• TCP port
• Host headers
• IP addresses of interfaces
Personalization Server – PoSH configuration
• Post installation SCU cmdlets Get-ApsInstance and Import-
ApsInstance are available
• Use Get-ApsInstance to list all instances of product server
• Use Import-ApsInstance to load the remaining cmdlets for the
product server and instance you want to configure
• Most important cmdlets:
• Get-ApsPrerequisite, Install-ApsPrerequisite - list and install prerequisites
• Initialize-ApsDatabase - create or upgrade database
• Initialize-ApsServer - set up current server
• All cmdlets provide online help (e.g. get-help Initialize-ApsDatabase)
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

Chapter01 Introduction To Windows Server 2003
Chapter01     Introduction To  Windows  Server 2003Chapter01     Introduction To  Windows  Server 2003
Chapter01 Introduction To Windows Server 2003
Raja Waseem Akhtar
 
Microsoft Offical Course 20410C_10
Microsoft Offical Course 20410C_10Microsoft Offical Course 20410C_10
Microsoft Offical Course 20410C_10
gameaxt
 
Microsoft Windows Server 2012 R2 Overview - Presented by Atidan
Microsoft Windows Server 2012 R2 Overview - Presented by AtidanMicrosoft Windows Server 2012 R2 Overview - Presented by Atidan
Microsoft Windows Server 2012 R2 Overview - Presented by Atidan
David J Rosenthal
 
Mcse course
Mcse courseMcse course
Mcse course
baluja
 
Microsoft Offical Course 20410C_03
Microsoft Offical Course 20410C_03Microsoft Offical Course 20410C_03
Microsoft Offical Course 20410C_03
gameaxt
 
Installation & configuration
Installation & configurationInstallation & configuration
Installation & configuration
SyAM Software
 
Lecture 11 managing the network
Lecture 11   managing the networkLecture 11   managing the network
Lecture 11 managing the network
Wiliam Ferraciolli
 
Lecture 12 monitoring the network
Lecture 12   monitoring the networkLecture 12   monitoring the network
Lecture 12 monitoring the network
Wiliam Ferraciolli
 
Active Directory Upgrade
Active Directory UpgradeActive Directory Upgrade
Active Directory Upgrade
Spiffy
 
Lecture 3 more on servers and services
Lecture 3   more on servers and servicesLecture 3   more on servers and services
Lecture 3 more on servers and services
Wiliam Ferraciolli
 

Was ist angesagt? (20)

Windows Server 2012
Windows Server 2012Windows Server 2012
Windows Server 2012
 
MCSA 70-412 Chapter 12
MCSA 70-412 Chapter 12MCSA 70-412 Chapter 12
MCSA 70-412 Chapter 12
 
Mcts chapter 8
Mcts chapter 8Mcts chapter 8
Mcts chapter 8
 
Upgrading AD from Windows Server 2003 to Windows Server 2008 R2
Upgrading AD from Windows Server 2003 to Windows Server 2008 R2Upgrading AD from Windows Server 2003 to Windows Server 2008 R2
Upgrading AD from Windows Server 2003 to Windows Server 2008 R2
 
Chapter01 Introduction To Windows Server 2003
Chapter01     Introduction To  Windows  Server 2003Chapter01     Introduction To  Windows  Server 2003
Chapter01 Introduction To Windows Server 2003
 
Microsoft Offical Course 20410C_10
Microsoft Offical Course 20410C_10Microsoft Offical Course 20410C_10
Microsoft Offical Course 20410C_10
 
Microsoft Windows Server 2012 R2 Overview - Presented by Atidan
Microsoft Windows Server 2012 R2 Overview - Presented by AtidanMicrosoft Windows Server 2012 R2 Overview - Presented by Atidan
Microsoft Windows Server 2012 R2 Overview - Presented by Atidan
 
Mcse course
Mcse courseMcse course
Mcse course
 
windows server 2012 internal monitoring tools
windows server 2012 internal monitoring toolswindows server 2012 internal monitoring tools
windows server 2012 internal monitoring tools
 
Mcts chapter 4
Mcts chapter 4Mcts chapter 4
Mcts chapter 4
 
Windows 8 Deployment
Windows 8 DeploymentWindows 8 Deployment
Windows 8 Deployment
 
70-410 Installing and Configuring Windows Server 2012
70-410 Installing and Configuring Windows Server 201270-410 Installing and Configuring Windows Server 2012
70-410 Installing and Configuring Windows Server 2012
 
Why Upgrade To Windows Server 2012
Why Upgrade To Windows Server 2012Why Upgrade To Windows Server 2012
Why Upgrade To Windows Server 2012
 
MCSA 70-412 Chapter 03
MCSA 70-412 Chapter 03MCSA 70-412 Chapter 03
MCSA 70-412 Chapter 03
 
Microsoft Offical Course 20410C_03
Microsoft Offical Course 20410C_03Microsoft Offical Course 20410C_03
Microsoft Offical Course 20410C_03
 
Installation & configuration
Installation & configurationInstallation & configuration
Installation & configuration
 
Lecture 11 managing the network
Lecture 11   managing the networkLecture 11   managing the network
Lecture 11 managing the network
 
Lecture 12 monitoring the network
Lecture 12   monitoring the networkLecture 12   monitoring the network
Lecture 12 monitoring the network
 
Active Directory Upgrade
Active Directory UpgradeActive Directory Upgrade
Active Directory Upgrade
 
Lecture 3 more on servers and services
Lecture 3   more on servers and servicesLecture 3   more on servers and services
Lecture 3 more on servers and services
 

Ähnlich wie AppSense EM 8.5 Deep Dive

Using the Corporate Geographic Data Model with Subversion
Using the Corporate Geographic Data Model with SubversionUsing the Corporate Geographic Data Model with Subversion
Using the Corporate Geographic Data Model with Subversion
Debbie Wilson
 
Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12
gameaxt
 
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
Andik Susilo
 
Whats new in Citrix XenApp 6
Whats new in Citrix XenApp 6Whats new in Citrix XenApp 6
Whats new in Citrix XenApp 6
gadi_fe
 
Modern Operating System Windows Server 2008
Modern Operating System  Windows Server 2008Modern Operating System  Windows Server 2008
Modern Operating System Windows Server 2008
Sneha Chopra
 

Ähnlich wie AppSense EM 8.5 Deep Dive (20)

Using the Corporate Geographic Data Model with Subversion
Using the Corporate Geographic Data Model with SubversionUsing the Corporate Geographic Data Model with Subversion
Using the Corporate Geographic Data Model with Subversion
 
(ATS6-APP09) ELN configuration management with ADM
(ATS6-APP09) ELN configuration management with ADM(ATS6-APP09) ELN configuration management with ADM
(ATS6-APP09) ELN configuration management with ADM
 
Environment Manager Policy
Environment Manager PolicyEnvironment Manager Policy
Environment Manager Policy
 
TechNet Live spor 1 sesjon 2 - sc-forefront 2
TechNet Live spor 1   sesjon 2 - sc-forefront 2TechNet Live spor 1   sesjon 2 - sc-forefront 2
TechNet Live spor 1 sesjon 2 - sc-forefront 2
 
Windows_Installation.pptx
Windows_Installation.pptxWindows_Installation.pptx
Windows_Installation.pptx
 
PPT
PPTPPT
PPT
 
Overview and features of NCM
Overview and features of NCMOverview and features of NCM
Overview and features of NCM
 
Ite v5.0 chapter5
Ite v5.0 chapter5Ite v5.0 chapter5
Ite v5.0 chapter5
 
6421 b Module-13
6421 b Module-136421 b Module-13
6421 b Module-13
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
 
Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.
 
Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12
 
Group policy preferences
Group policy preferencesGroup policy preferences
Group policy preferences
 
ITE v5.0 - Chapter 5
ITE v5.0 - Chapter 5ITE v5.0 - Chapter 5
ITE v5.0 - Chapter 5
 
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
Windows 7 Deployment with Microsoft Deployment Toolkit & Windows Deployment S...
 
Host961 PC Backup
Host961 PC BackupHost961 PC Backup
Host961 PC Backup
 
Product Information - Fuse Management Central 1.0.0
Product Information - Fuse Management Central 1.0.0Product Information - Fuse Management Central 1.0.0
Product Information - Fuse Management Central 1.0.0
 
Whats new in Citrix XenApp 6
Whats new in Citrix XenApp 6Whats new in Citrix XenApp 6
Whats new in Citrix XenApp 6
 
New Features Lotus Domino Administration 8.5
New Features Lotus Domino Administration 8.5New Features Lotus Domino Administration 8.5
New Features Lotus Domino Administration 8.5
 
Modern Operating System Windows Server 2008
Modern Operating System  Windows Server 2008Modern Operating System  Windows Server 2008
Modern Operating System Windows Server 2008
 

Kürzlich hochgeladen

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Kürzlich hochgeladen (20)

OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 

AppSense EM 8.5 Deep Dive

  • 1. Confidential 1 EM 8.5 Deep Dive 1 David Allen Product Manager David.Allen@appsense.com
  • 2. Environment Manager 8.5 highlights • Biggest overhaul of the Console since 8.1 • New more reliable logon trigger mechanism • Desktop Settings receives the biggest changes • Removed or simplified overly complex functionality • Numerous issues addressed that couldn’t be addressed in version 8.4
  • 3. Common problems addressed in EM 8.5 • Changing the client configuration mid-session • No way to personalize non-exportable certificates • Lack of support for personalizing user mapped network drives • No support for capturing individual files or registry values • Personalizing Windows Explorer views and navigation settings • Capturing Windows and App Credentials inside EM Personalization • Desktop Settings problems across Windows versions and architectures (x86/x64) • Having to rollback all Desktop Settings, not just the those that may have become corrupted • Not being able to use environment and session variables in conditions and actions • Desktop, Task Bar and Start Menu links to non-existent applications • Using SQL scripts to clean out ‘stale’ EM personalization data • No built-in templates for Office 2013 and Office 365 • Writing scripting loops to wait for network connection • Scripting Robocopy (instead of using Copy function) • Find and Replace didn’t allow in-place editing … and many more!
  • 4. New Logon triggers • Logon split into 3 sub-triggers • Pre-Session – new trigger that fires once the user profile has been created but before the user session is started • Pre-Desktop – replacement for the Logon trigger in previous versions and fires slightly earlier during the logon process • Desktop Created – new trigger that fires once the desktop shell has been created
  • 5. Deterministic triggers – behind the scenes • Logon and Logoff events now use Windows Notification Packages (XP/WS2K3) or SysNotify (Vista/WS2K8 onwards) • EM is now part of the logon chain – no race conditions • No longer reliant on Group Policy for logoff • Shutdown using a pre-shutdown event from the SCM • No longer reliant on Group Policy • Session Lock/Unlock, Connect/Disconnect now use SCM events • New ‘Network Available’ trigger, fires after Computer Startup, uses Network Location Awareness. S
  • 6. New Logon trigger – upgrades • Config upgrades – prompts for upgrades • Yes – upgrades the configuration to 8.5 and the logon triggers • No – upgrades the configuration to 8.5 but not the logon triggers • Upgrading shows the new sub-triggers • Advanced Configuration Settings provides the option to downgrade to legacy logon triggers, should you encounter a problem during upgrades • Downgrading converts sub-triggers to nodes • No fixes provided to legacy logon triggers, backward compatibility only • Switching between modes requires a client system restart • New config won’t be loaded until the rebooted
  • 7. New Logon trigger – Logon Messages
  • 8. Network Available trigger • Added to compliment Computer Startup trigger • Numerous reports of ‘wait for network’ loops in startup trigger • (Vista, Win7, Win8) uses Network List Manager (NLM) and triggers when “Identified” state of any network received • Windows Firewall uses this to classify network, Public, Private, Domain • (WinXP) uses of the Windows Network Location Awareness API to obtain the network events for Network Available. • More primitive than NLM, but works along the same lines, used by Windows for Firewall Policy • Network Available is not triggered if the service is restarted
  • 9. Mid-Session config change • Difficult problem to solve safely– don’t be too clever  • Immediate, User Logon or Computer Startup • Switching modes possible at anytime • Client process “peeks” at the config to determine if it should be loaded, if not set to “Immediate” then it is ignored • Controlled by the manifest.xml in the configuration.aemp • <enum name="ProductConfigChange" type="ConfigurationChangeType" default="UserLogon" /> • Non 8.5 configs default to “Immediate”, previous behavior • New 8.5 configs default to “User Logon”
  • 10. Personalization Override • It’s Fixed! • Pre-8.5 uses copy operations inside personalization • 8.5 uses a copy operation inside policy • All the virtual file actions are run inside policy instead of inside the Profile Module which was devoid of any of the environment or options available inside the policy engine S
  • 12. Windows Personalization • Desktop Settings + Session Data = Windows Personalization • Configurable outside of Personalization Groups • Uses the same paradigm as Applications • Stores Windows settings in user configurable collections which controls the granularity of rollbacks • Uses more flexible ‘EM Policy Conditions’ rather than the limited inherit, shared and separate model per ‘Windows family’ • Provides specific device targeting • Session Data = Custom Windows Setting • Specify Files/Folders and Registry Keys/Values • Select which Windows versions it applies to
  • 13. Windows Personalization – under the hood • Each group of Windows settings equates to one ‘bubble’ • Assigning to these to Personalization Groups, means multiple ‘bubbles’ per profile, but are encapsulated in one profile • All ‘bubbles’ are therefore retrieved in one server round-trip to improve performance – better than 8.4 • Personalization configuration now cached to improve performance (metadata, policy and conditions cache) • Changes to the groups, such as the addition or removal of Windows settings or conditions will update the cache
  • 14. Windows Personalization – Logon • Client requests the configuration (config.aspx) • ProfileConfig.xml, DesktopSettings3.xml and DesktopSettingsConditions.xml are downloaded (compressed) • DesktopSettings3.xml contains Windows Personalization definitions • Fixed meta-data for the OOB fixed windows settings, representing which registry keys/file paths are valid on each Windows version • DesktopSettingsConditions.xml is the EMX policy configuration that applies to the Windows Settings Groups • Contains a conditions node for each group of Windows settings S
  • 15. Windows Personalization – Logon (2) • DesktopSettingsConditions.xml is loaded using the policy “ConfigurationManager” • Effectively this is loaded into a new trigger named “DESKTOP_SETTINGS_CONDITIONS” • The policy execution engine trigger and associated nodes are created • The policy execution engine is then used to • Register a node completion callback, which is fired for each group of Windows settings, when complete • Initiates execution of the DESKTOP_SETTINGS_CONDITIONS trigger • Executes each node on a separate thread (as per usual with policy triggers) • For each callback that completes with a positive result, the group of Windows settings is recorded in a list S
  • 16. Windows Personalization – Logon (3) • The list of recorded Windows Settings Groups is passed over to the synchronizer in order to make a request for the required groups • The synchronizer creates a new file in the cache called AppSenseFileFilter.xml • Contain a comma separated list of WSG’s to fetch in the profile – conditions excluded WSG’s that are not relevant • Performs a sync down sending the new file for the filtered WSG list • EMPS performs a filtered query based on the file filter • When the data arrives at the client, each fbr per WSG is applied to the registry according to the Windows version S
  • 17. Windows Personalization – Logoff • DesktopSettingsConditions.xml parsed again • This will have been updated when the config poll is performed • DESKTOP_SETTINGS_CONDITIONS trigger is run again. • List of WSGs prepared and Desktop Cache is prepared for sync up • Existing WSGs (at logon) are saved to a temporary area • The Desktop Cache is cleared • WSGs are saved to the cache from the real registry/file system using the list prepared earlier • Settings applicable by Windows version are added in to the FBR files • Unreferenced files no longer used are deleted • AppSenseFileFilter.xml created from list of WSGs • Sync up to server S
  • 18. Windows Personalization – Config upgrades • Clean installs match old 8.4 Desktop Settings • Capture the same using conditions rather than ‘OS Family’ (shared/separate model) • Pre-8.3 configs are not upgraded, use the same config as a clean install • Post-8.3 upgrades the config – you don’t have to keep this, construct your own • Personalization Groups using global Desktop Settings, which are Shared, are placed in ‘GlobalShared’ Group • Personalization Groups using global Desktop Settings, which are Separate, are placed into the groups: ‘GlobalXP’, ‘GlobalVista’, ‘GlobalWin7’ or ‘GlobalWin8’ Group • Personalization Groups with group specific Desktop Settings get placed either in a <PGName>_Shared group if Shared or <PGName>_OS group if marked as a separate setting • Session Data placed in SessionData WSGs • One per Personalization Group if not global • Certificates and Credential settings stored in a Security WSG
  • 19. Windows Personalization – Data upgrades • Continues to behave as it did previously • Legacy Desktop Settings data is preserved • Cannot change legacy personalization configuration • Data conversion takes place once 8.5 agent deployed • Converted to the WSG per Personalization Group • Legacy data remains until you are ready to remove it • Old Desktop Settings data is displayed in Personalization Analysis as [Legacy]
  • 20. Windows Personalization – Certificates & Credentials • Certificates and Credentials managed separately • Now Windows Settings in Windows Personalization • New certificate functionality: • Trusted Root certificates • Non-Exportable Certificates • Certificates with high security keys • No user prompting accepting trusted root and high security certificates • To resolve certificates held in the registry • Trusted Installer ownership issues – solution was to hive these • Incompatible between NT5 and NT6 – solution hive for each platform type S
  • 22. Personalization Server – Multi-instance • Install multiple named instances of EMPS on the same machine • Separate versions and separately patchable • Each instance has a name (instance id), first install is called “DEFAULT” • Each instance requires a separate web site in IIS
  • 23. Personalization Server – Multi-instance installation
  • 24. Personalization Server – Multi-instance installation (2) • Install instances of EMPS with the following msiexec command: • msiexec /i <pathtomsi> INSTANCEID=<instancename> TRANSFORMS=<tname> MSINEWINSTANCE=1 /quiet where pathtomsi is the full path of PersonalizationServer64.msi tname is an internal transform name - values are “:I01” to “:I16” instancename is the name you want to give the instance • Alternatively use InstallerCmd.exe which can be found in the Bin directory of a full installation • E.g. InstallerCmd /i <pathtomsi> <instancename> [<optional parameters>] • Up to 17 instances per server - default and I01 to I16.
  • 25. Personalization Server – Multi-instance IIS config • IIS needs to distinguish between sites: • TCP port • Host headers • IP addresses of interfaces
  • 26. Personalization Server – PoSH configuration • Post installation SCU cmdlets Get-ApsInstance and Import- ApsInstance are available • Use Get-ApsInstance to list all instances of product server • Use Import-ApsInstance to load the remaining cmdlets for the product server and instance you want to configure • Most important cmdlets: • Get-ApsPrerequisite, Install-ApsPrerequisite - list and install prerequisites • Initialize-ApsDatabase - create or upgrade database • Initialize-ApsServer - set up current server • All cmdlets provide online help (e.g. get-help Initialize-ApsDatabase)
  • 27. Q&A

Hinweis der Redaktion

  1. To replace top right and bottom images: Delete current image Click the icon, select the image and click Insert