Machine Learning workspace should be configured as high business impact
Medium
Azure
General
ml-machine-learning-workspace-configured
Applies to
Microsoft.MachineLearningServices/workspaces
What CGPulse checks
A resource passes this rule when hbiWorkspace must equal true. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Enable encryption at rest to protect stored data from media compromise. In Azure Portal: Workspace > Encryption > enable encryption. See: https://learn.microsoft.com/en-us/azure/machine-learning/concept-data-encryption
CLI
az ml workspace show --ids "{id}" --query "hbi_workspace" -o tsvBicep
// HBI must be set at creation time and cannot be changed
resource mlWorkspace 'Microsoft.MachineLearningServices/workspaces@2024-04-01' = {{
name: '{name}'
location: resourceGroup().location
identity: {{
type: 'SystemAssigned'
}}
properties: {{
hbiWorkspace: true
storageAccount: '<storage-account-id>'
keyVault: 'var.key_vault_id'
applicationInsights: '<app-insights-id>'
}}
}}Terraform
resource "azurerm_machine_learning_workspace" "{name}" {
name = "{name}"
resource_group_name = "{rg}"
location = var.location
high_business_impact = true
application_insights_id = "<app-insights-id>"
key_vault_id = var.key_vault_id
storage_account_id = "<storage-account-id>"
identity {
type = "SystemAssigned"
}
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related Azure rules
- Action Group should be enabled
- Activity Log Alert should be enabled
- AKS cluster logs should be sent to Log Analytics
- AKS cluster must enable RBAC
- AKS cluster must enable RBAC
- AKS cluster should be a private cluster
- AKS cluster should disable local accounts
- AKS cluster should enable Azure RBAC for Kubernetes