azure-aml-public-endpoint

AML workspace with publicNetworkAccess=Enabled exposes its management REST API to the internet - any token holder can reach it.

derived azure emits ExposedToInternet

where

workspace publicNetworkAccess == Enabled (no private-endpoint-only restriction)

emit

source typeData
target typeAnonymousIdentity
source<AML workspace (AnalyticsService / GenericData)>
target<AnonymousIdentity>
conditionsnetwork_reachability

Narrative

AML workspace {workspace.name} exposes its management REST API to the public internet (publicNetworkAccess=Enabled); any valid Azure AD token can be used to authenticate and submit jobs or retrieve datastore secrets.

Raw rule rules/derived/azure/machinelearning.yaml

id: azure-aml-public-endpoint
emits: ExposedToInternet
description: "AML workspace with publicNetworkAccess=Enabled exposes its management REST API to the internet\
  \ \u2014 any token holder can reach it."
where:
- workspace publicNetworkAccess == Enabled (no private-endpoint-only restriction)
emit:
  source_type: Data
  target_type: AnonymousIdentity
  source: <AML workspace (AnalyticsService / GenericData)>
  target: <AnonymousIdentity>
  conditions:
  - network_reachability
  false_positive_note: Do not emit if publicNetworkAccess is Disabled or the workspace is restricted to
    private endpoints only (no public-IP workspace). In that case emit PrivateReachability for access
    from within the VNet. Authentication (Azure AD token) is always required; this edge models internet
    reachability, not anonymous access. Anonymous access is not possible to the AML workspace REST API.
  narrative: AML workspace {workspace.name} exposes its management REST API to the public internet (publicNetworkAccess=Enabled);
    any valid Azure AD token can be used to authenticate and submit jobs or retrieve datastore secrets.
move · open · esc close