Closed cataggar closed 6 months ago
The Go SDK split up managedIdentityClient
from managedIdentityCredential
. The client supports these types:
const (
msiTypeAppService msiType = iota
msiTypeAzureArc
msiTypeAzureML
msiTypeCloudShell
msiTypeIMDS
msiTypeServiceFabric
)
The JS SDK supports these types:
const MSIs = [
arcMsi,
fabricMsi,
appServiceMsi2019,
appServiceMsi2017,
cloudShellMsi,
tokenExchangeMsi(),
imdsMsi,
];
In https://github.com/Azure/azure-sdk-for-rust/issues/423 was renamed from
ManagedIdentityCredential
toImdsManagedIdentityCredential
.If we look in the .NET SDK, their managed identity is a combination of these: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/src/ManagedIdentityClient.cs#L80-L91
I think our current
ImdsManagedIdentityCredential
is a combination:All but IMDS has a
TryCreate
that checks environment variables and fails really fast. I'm not sure what the best way is to implement something similar toTryCreate
in Rust for our credentials.