Skip to content

Commit addc62a

Browse files
authored
Merge pull request #3049 from MicrosoftDocs/repo_sync_working_branch
Confirm merge from repo_sync_working_branch to main to sync with https://github.com/MicrosoftDocs/azure-ai-docs (branch main)
2 parents ffa52cb + ad6ec64 commit addc62a

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

articles/machine-learning/how-to-identity-based-service-authentication.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,38 @@ During cluster creation or when editing compute cluster details, in the **Advanc
276276

277277
---
278278

279+
### Kubernetes Cluster Compute
280+
281+
> [!NOTE]
282+
> Azure Machine Learning kubernetes clusters support only **one system-assigned identity** or **one user-assigned identities**, not both concurrently.
283+
284+
The **default managed identity** is the system-assigned managed identity or the first user-assigned managed identity.
285+
286+
287+
During a run, there are two applications of an identity:
288+
289+
- The system uses an identity to set up the user's storage mounts, container registry, and datastores.
290+
291+
* In this case, the system will use the default-managed identity.
292+
293+
- You apply an identity to access resources from within the code for a submitted job:
294+
295+
* In the case of kubernetes cluster compute, the ManagedIdentityCredential object should be provided **without any client_id**.
296+
297+
For example, to retrieve a token for a datastore with the default-managed identity:
298+
299+
```python
300+
credential = ManagedIdentityCredential()
301+
token = credential.get_token('https://storage.azure.com/')
302+
```
303+
304+
To configure a kubernetes cluster compute, make sure that it has the [necessary AML extension deployed in it](https://learn.microsoft.com/azure/machine-learning/how-to-deploy-kubernetes-extension?view=azureml-api-2&tabs=deploy-extension-with-cli) and follow the documentation on [how to attach the kubernetes cluster compute to your AML workspace](https://learn.microsoft.com/azure/machine-learning/how-to-attach-kubernetes-to-workspace?view=azureml-api-2&tabs=cli).
305+
306+
> [!IMPORTANT]
307+
> For Training purposes (Machine Learning Jobs), the identity that is used is the one assigned to the Kubernetes Cluster Compute. However, in the case of inferencing (Managed Online Endpoints), the identity that is used is the one assigned to the endpoint. For more information see [How to Access Azure Resources from an Online Endpoint](https://learn.microsoft.com/azure/machine-learning/how-to-access-resources-from-endpoints-managed-identities?view=azureml-api-2&tabs=system-identity-cli).
308+
309+
---
310+
279311
### Data storage
280312

281313
When you create a datastore that uses **identity-based data access**, your Azure account ([Microsoft Entra token](/azure/active-directory/fundamentals/active-directory-whatis)) is used to confirm you have permission to access the storage service. In the **identity-based data access** scenario, no authentication credentials are saved. Only the storage account information is stored in the datastore.
@@ -413,6 +445,7 @@ The following steps outline how to set up data access with user identity for tra
413445
> [!IMPORTANT]
414446
> During job submission with authentication with user identity enabled, the code snapshots are protected against tampering by checksum validation. If you have existing pipeline components and intend to use them with authentication with user identity enabled, you might need to re-upload them. Otherwise the job may fail during checksum validation.
415447

448+
416449
### Work with virtual networks
417450

418451
By default, Azure Machine Learning can't communicate with a storage account that's behind a firewall or in a virtual network.

0 commit comments

Comments
 (0)