// or Windows (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/remote-commands-prereq.html)).
//
// SSM Config
//
// SSM Config is a lightweight instance configuration solution. SSM Config
// is currently only available for Windows instances. With SSM Config, you can
// specify a setup configuration for your instances. SSM Config is similar to
// EC2 User Data, which is another way of running one-time scripts or applying
// settings during instance launch. SSM Config is an extension of this capability.
// Using SSM documents, you can specify which actions the system should perform
// on your instances, including which applications to install, which AWS Directory
// Service directory to join, which Microsoft PowerShell modules to install,
// etc. If an instance is missing one or more of these configurations, the system
// makes those changes. By default, the system checks every five minutes to
// see if there is a new configuration to apply as defined in a new SSM document.
// If so, the system updates the instances accordingly. In this way, you can
// remotely maintain a consistent configuration baseline on your instances.
// SSM Config is available using the AWS CLI or the AWS Tools for Windows PowerShell.
// For more information, see Managing Windows Instance Configuration (http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-configuration-manage.html).
//
// SSM Config and Run Command include the following pre-defined documents.
//
// Linux
//
// AWS-RunShellScript to run shell scripts
//
// AWS-UpdateSSMAgent to update the Amazon SSM agent
//
// Windows
//
// AWS-JoinDirectoryServiceDomain to join an AWS Directory
//
// AWS-RunPowerShellScript to run PowerShell commands or scripts
//
// AWS-UpdateEC2Config to update the EC2Config service
//
// AWS-ConfigureWindowsUpdate to configure Windows Update settings
//
// AWS-InstallApplication to install, repair, or uninstall software using
// an MSI package
//
// AWS-InstallPowerShellModule to install PowerShell modules
//
// AWS-ConfigureCloudWatch to configure Amazon CloudWatch Logs to monitor
// applications and systems
//
// AWS-ListWindowsInventory to collect information about an EC2 instance
// running in Windows.
//
// AWS-FindWindowsUpdates to scan an instance and determines which updates
// are missing.
//
// AWS-InstallMissingWindowsUpdates to install missing updates on your EC2
// instance.
//
// AWS-InstallSpecificWindowsUpdates to install one or more specific updates.
//
// The commands or scripts specified in SSM documents run with administrative
// privilege on your instances because the Amazon SSM agent runs as root on
// Linux and the EC2Config service runs in the Local System account on Windows.
// If a user has permission to execute any of the pre-defined SSM documents
// (any document that begins with AWS-*) then that user also has administrator
// access to the instance. Delegate access to Run Command and SSM Config judiciously.
// This becomes extremely important if you create your own SSM documents. Amazon
// Web Services does not provide guidance about how to create secure SSM documents.
// You create SSM documents and delegate access to Run Command at your own risk.
// As a security best practice, we recommend that you assign access to "AWS-*"
// documents, especially the AWS-RunShellScript document on Linux and the AWS-RunPowerShellScript
// document on Windows, to trusted administrators only. You can create SSM documents
// for specific tasks and delegate access to non-administrators.
//
// For information about creating and sharing SSM documents, see the following