Describe the request
The AppFramework allow us to use two type of authentication: ManagedIdentity and SAS Token.
However, for the ManagedIdentity, it only works if there is only one user-managed identity assigned to the AKS nodepool vmss instance (ie. myakscluster_agentpool).
If there is more than one, the token request to microsoft will fail and return:
"error_description":"Multiple user assigned identities exist, please specify the clientId / resourceId of the identity in the token request"
Create an AKS cluster with multiple user-identity (create aks with this additional parameter --enable-addons azure-keyvault-secrets-provider). At this point you will have more than 1 user-managed identity and trigger the failure.
Deploy Splunk on the cluster.
K8s environment
AKS Cluster using managed-identity and azure key-vault
Proposed changes(optional)
Update azureblobclient.go to accept optional "client_id" value when authenticating with IAM
Currently the oauth query look something like this:
Please select the type of request
Bug
Tell us more
Describe the request The AppFramework allow us to use two type of authentication: ManagedIdentity and SAS Token.
However, for the ManagedIdentity, it only works if there is only one user-managed identity assigned to the AKS nodepool vmss instance (ie. myakscluster_agentpool).
If there is more than one, the token request to microsoft will fail and return: "error_description":"Multiple user assigned identities exist, please specify the clientId / resourceId of the identity in the token request"
For more info regarding why it causes this error: https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/managed-identities-faq#what-identity-will-imds-default-to-if-i-dont-specify-the-identity-in-the-request
Splunk-Operator error:
Expected behavior Successful authentication with IAM,
Splunk setup on K8S Standard Splunk deployment
Reproduction/Testing steps
K8s environment AKS Cluster using managed-identity and azure key-vault
Proposed changes(optional)
Currently the oauth query look something like this:
To handle the case where there is more than one client-assigned managed identity, the query look like this:
See: https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/how-managed-identities-work-vm
Thanks, Dan