Azure security baseline for Automation
This security baseline applies guidance from the Microsoft cloud security benchmark version 1.0 to Automation. The Microsoft cloud security benchmark provides recommendations on how you can secure your cloud solutions on Azure. The content is grouped by the security controls defined by the Microsoft cloud security benchmark and the related guidance applicable to Automation.
You can monitor this security baseline and its recommendations using Microsoft Defender for Cloud. Azure Policy definitions will be listed in the Regulatory Compliance section of the Microsoft Defender for Cloud portal page.
When a feature has relevant Azure Policy Definitions, they are listed in this baseline to help you measure compliance with the Microsoft cloud security benchmark controls and recommendations. Some recommendations may require a paid Microsoft Defender plan to enable certain security scenarios.
Note
Features not applicable to Automation have been excluded. To see how Automation completely maps to the Microsoft cloud security benchmark, see the full Automation security baseline mapping file.
Security profile
The security profile summarizes high-impact behaviors of Automation, which may result in increased security considerations.
Service Behavior Attribute | Value |
---|---|
Product Category | MGMT/Governance |
Customer can access HOST / OS | No Access |
Service can be deployed into customer's virtual network | True |
Stores customer content at rest | True |
Network security
For more information, see the Microsoft cloud security benchmark: Network security.
NS-1: Establish network segmentation boundaries
Features
Virtual Network Integration
Description: Service supports deployment into customer's private Virtual Network (VNet). Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Configuration Guidance: Deploy the service into a virtual network. Assign private IPs to the resource (where applicable). This is the recommended configuration from a security point of view; however, this requires you to configure Hybrid Runbook Worker connected to an Azure virtual network & currently does not support cloud jobs.
Networking for Azure Automation
Reference: Use Azure Private Link to securely connect networks to Azure Automation
NS-2: Secure cloud services with network controls
Features
Azure Private Link
Description: Service native IP filtering capability for filtering network traffic (not to be confused with NSG or Azure Firewall). Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Configuration Guidance: Deploy private endpoints for all Azure resources that support the Private Link feature, to establish a private access point for the resources.
Reference: Use Azure Private Link to securely connect networks to Azure Automation
Disable Public Network Access
Description: Service supports disabling public network access either through using service-level IP ACL filtering rule (not NSG or Azure Firewall) or using a 'Disable Public Network Access' toggle switch. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Feature notes: Azure Automation service supports disabling public network access either through a built-in Azure Policy or you can use the PowerShell cmdlet also - Set public network access flags
Configuration Guidance: Disable public network access either using the PowerShell cmdlet or a toggling switch for public network access.
Reference: Automation accounts should disable public network access
Identity management
For more information, see the Microsoft cloud security benchmark: Identity management.
IM-1: Use centralized identity and authentication system
Features
Azure AD Authentication Required for Data Plane Access
Description: Service supports using Azure AD authentication for data plane access. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Feature notes: Extension based (v2) user Hybrid Runbook Worker feature of Azure Automation used to run runbooks directly on an Azure or non-Azure machine through servers registered with Azure Arc-enabled servers uses Azure AD authentication.
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Azure Automation account authentication overview
Local Authentication Methods for Data Plane Access
Description: Local authentications methods supported for data plane access, such as a local username and password. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Feature notes: Azure Automation service supports certificate based local authentication method for data plane access through agent based (v1) windows or Linux Hybrid runbook worker, however , this is not the recommended approach to onboard Hybrid workers. Use extension based (v2) hybrid runbook worker installation method as the recommended approach. Avoid the usage of local authentication methods or accounts, these should be disabled wherever possible. Instead use Azure AD to authenticate where possible.
Configuration Guidance: Restrict the use of local authentication methods for data plane access. Instead, use Azure Active Directory (Azure AD) as the default authentication method to control your data plane access.
Disable local authentication in Automation
Reference: Deploy an agent-based Windows Hybrid Runbook Worker in Automation
IM-3: Manage application identities securely and automatically
Features
Managed Identities
Description: Data plane actions support authentication using managed identities. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Feature notes: System Managed Identity is created by default if Account is created via portal, but not by default if account is created via API/cmdlet. Can be enabled post account creation as well.
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Managed identities
Service Principals
Description: Data plane supports authentication using service principals. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
False | Not Applicable | Not Applicable |
Configuration Guidance: This feature is not supported to secure this service.
IM-8: Restrict the exposure of credential and secrets
Features
Service Credential and Secrets Support Integration and Storage in Azure Key Vault
Description: Data plane supports native use of Azure Key Vault for credential and secrets store. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Feature notes: Secure assets in Azure Automation include credentials, certificates, connections, and encrypted variables. These assets are encrypted and stored in Automation by using a unique key that is generated for each Automation account. Automation stores the key in the system-managed Key Vault service. Before storing a secure asset, Automation loads the key from Key Vault, and then uses it to encrypt the asset.
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Manage credentials in Azure Automation
Privileged access
For more information, see the Microsoft cloud security benchmark: Privileged access.
PA-7: Follow just enough administration (least privilege) principle
Features
Azure RBAC for Data Plane
Description: Azure Role-Based Access Control (Azure RBAC) can be used to managed access to service's data plane actions. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Feature notes: Automation integrates with Azure RBAC to manage its resources. With RBAC, you manage Azure resource access through role assignments. You can assign roles to users, groups, service principals, and managed identities. Certain resources have pre-defined, built-in roles. You can inventory or query these roles through tools like Azure CLI, Azure PowerShell, or the Azure portal.
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Manage role permissions and security in Azure Automation
PA-8: Determine access process for cloud provider support
Features
Customer Lockbox
Description: Customer Lockbox can be used for Microsoft support access. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
False | Not Applicable | Not Applicable |
Feature notes: Lockbox is not implemented for Azure Automation , instead Azure Automation service encrypts Runbook script and DSC configuration with Customer managed keys before storing to SQL database , making the automation resources encrypted.
/en-us/azure/automation/whats-new-archive#added-capability-to-keep-automation-runbooks-and-dsc-scripts-encrypted-by-default
Configuration Guidance: This feature is not supported to secure this service.
Data protection
For more information, see the Microsoft cloud security benchmark: Data protection.
DP-3: Encrypt sensitive data in transit
Features
Data in Transit Encryption
Description: Service supports data in-transit encryption for data plane. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: TLS 1.2 for Azure Automation
DP-4: Enable data at rest encryption by default
Features
Data at Rest Encryption Using Platform Keys
Description: Data at-rest encryption using platform keys is supported, any customer content at rest is encrypted with these Microsoft managed keys. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Feature notes: Secure assets in Azure Automation include credentials, certificates, connections, and encrypted variables. These assets are protected in Azure Automation using multiple levels of encryption. By default, your Azure Automation account uses Microsoft-managed keys.
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Microsoft-managed Keys
Microsoft Defender for Cloud monitoring
Azure Policy built-in definitions - Microsoft.Automation:
Name (Azure portal) |
Description | Effect(s) | Version (GitHub) |
---|---|---|---|
Automation account variables should be encrypted | It is important to enable encryption of Automation account variable assets when storing sensitive data | Audit, Deny, Disabled | 1.1.0 |
DP-5: Use customer-managed key option in data at rest encryption when required
Features
Data at Rest Encryption Using CMK
Description: Data at-rest encryption using customer-managed keys is supported for customer content stored by the service. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Configuration Guidance: If required for regulatory compliance, define the use case and service scope where encryption using customer-managed keys are needed. Enable and implement data at rest encryption using customer-managed key for those services.
Reference: Encryption of secure assets in Azure Automation
DP-6: Use a secure key management process
Features
Key Management in Azure Key Vault
Description: The service supports Azure Key Vault integration for any customer keys, secrets, or certificates. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Feature notes: Azure Automation does not support integrating with Key Vault natively to store custom’s secrets used by their Automation runbooks, however they can access Key Vault by using the Key Vault cmdlets from within the Automation runbook code.
Configuration Guidance: Use Azure Key Vault to create and control the life cycle of your encryption keys, including key generation, distribution, and storage. Rotate and revoke your keys in Azure Key Vault and your service based on a defined schedule or when there is a key retirement or compromise. When there is a need to use customer-managed key (CMK) in the workload, service, or application level, ensure you follow the best practices for key management: Use a key hierarchy to generate a separate data encryption key (DEK) with your key encryption key (KEK) in your key vault. Ensure keys are registered with Azure Key Vault and referenced via key IDs from the service or application. If you need to bring your own key (BYOK) to the service (such as importing HSM-protected keys from your on-premises HSMs into Azure Key Vault), follow recommended guidelines to perform initial key generation and key transfer.
DP-7: Use a secure certificate management process
Features
Certificate Management in Azure Key Vault
Description: The service supports Azure Key Vault integration for any customer certificates. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Feature notes: Secure assets in Azure Automation include credentials, certificates, connections, and encrypted variables. These assets are encrypted and stored in Automation by using a unique key that is generated for each Automation account. Automation stores the key in the system-managed Key Vault service. Before storing a secure asset, Automation loads the key from Key Vault, and then uses it to encrypt the asset.
Configuration Guidance: Use Azure Key Vault to create and control the certificate lifecycle, including creation, importing, rotation, revocation, storage, and purging of the certificate. Ensure the certificate generation follows defined standards without using any insecure properties, such as: insufficient key size, overly long validity period, insecure cryptography. Setup automatic rotation of the certificate in Azure Key Vault and the Azure service (if supported) based on a defined schedule or when there is a certificate expiration. If automatic rotation is not supported in the application, ensure they are still rotated using manual methods in Azure Key Vault and the application.
Reference: Manage certificates in Azure Automation
Asset management
For more information, see the Microsoft cloud security benchmark: Asset management.
AM-2: Use only approved services
Features
Azure Policy Support
Description: Service configurations can be monitored and enforced via Azure Policy. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | True | Microsoft |
Configuration Guidance: No additional configurations are required as this is enabled on a default deployment.
Reference: Azure Policy built-in definitions for Azure Automation
Logging and threat detection
For more information, see the Microsoft cloud security benchmark: Logging and threat detection.
LT-1: Enable threat detection capabilities
Features
Microsoft Defender for Service / Product Offering
Description: Service has an offering-specific Microsoft Defender solution to monitor and alert on security issues. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
False | Not Applicable | Not Applicable |
Configuration Guidance: This feature is not supported to secure this service.
LT-4: Enable logging for security investigation
Features
Azure Resource Logs
Description: Service produces resource logs that can provide enhanced service-specific metrics and logging. The customer can configure these resource logs and send them to their own data sink like a storage account or log analytics workspace. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
True | False | Customer |
Feature notes: Azure Automation can send runbook job status and job streams to your Log Analytics workspace. Job logs and job streams are visible in the Azure portal, or with PowerShell for individual jobs.
Configuration Guidance: Enable resource logs for the service. The content of resource logs varies by the Azure service and resource type. Azure Automation can send runbook job status and job streams to your Log Analytics workspace. Job logs and job streams are visible in the Azure portal, or with PowerShell for individual jobs.
Reference: Forward Azure Automation diagnostic logs to Azure Monitor
Backup and recovery
For more information, see the Microsoft cloud security benchmark: Backup and recovery.
BR-1: Ensure regular automated backups
Features
Azure Backup
Description: The service can be backed up by the Azure Backup service. Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
False | Not Applicable | Not Applicable |
Feature notes: Azure Automation backup through Azure Backup is not supported. It's your responsibility to make sure you maintain a valid backup of Automation configuration like runbooks and assets.
You can use Azure Resource Manager to deploy Automation accounts, and related resources. You can export Azure Resource Manager templates to use as backups to restore Automation accounts and related resources. Use Automation to call the Azure Resource Manager template export API regularly.
Follow (Automation Data Backup) [/azure/automation/automation-managing-data#data-backup] for this feature configuration. Please review and determine if your organization wants to configure this security feature. You can also leverage the guidance on setting up (Disaster recovery)[/azure/automation/automation-disaster-recovery?tabs=win-hrw%2Cps-script%2Coption-one] for Automation accounts.
You can also use the source control integration feature to keep runbooks in the Automation account up to date with scripts in the source control repository.
Configuration Guidance: This feature is not supported to secure this service.
Service Native Backup Capability
Description: Service supports its own native backup capability (if not using Azure Backup). Learn more.
Supported | Enabled By Default | Configuration Responsibility |
---|---|---|
False | Not Applicable | Not Applicable |
Feature notes: Azure Automation doesn't provide a native backup mechanism. It's your responsibility to make sure you maintain a valid backup of Automation configuration like runbooks and assets.
You can use Azure Resource Manager to deploy Automation accounts, and related resources. You can export Azure Resource Manager templates to use as backups to restore Automation accounts and related resources. Use Automation to call the Azure Resource Manager template export API regularly.
You can also use the source control integration feature to keep runbooks in the Automation account up to date with scripts in the source control repository.
Please review and determine if your organization wants to configure this security feature. You can also leverage the guidance on setting up Disaster recovery for Automation accounts.
Configuration Guidance: This feature is not supported to secure this service.
Next steps
- See the Microsoft cloud security benchmark overview
- Learn more about Azure security baselines