Azure ML automation auth: OIDC federated credential vs service principal secret

Verdict: Prefer OIDC with a federated credential: store client, tenant and subscription IDs, no long-lived secret. Unattended jobs use a service principal, not interactive auth. Trusted services and workspace identities authenticate by managed identity.

CriterionOIDC federated credentialService principal secret
What GitHub storesAZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_IDA client secret (AZURE_CREDENTIALS JSON)
Token lifetimeShort-lived federated tokens per runLong-lived stored secret
SecurityRecommended; nothing to leak or rotateDocumented as less secure, not recommended
Trust anchored byFederated credential subject = repo and branch/environmentThe stored secret itself

Rules

Traps