Helm с Azure приводит к 401 несанкционированному доступу
Версия Helm: 3.6.1
Следующие шаги успешны с ACR, добавляя удаленное репо диаграммы:
-
helm repo add myrepo https://myrepo.azurecr.io/helm/v1/repo --username "..." --password "..."
-
helm search repo myrepo
-> перечисляет доступные репозитории диаграмм
Но как только я пытаюсь установить диаграмму с такими же учетными данными: (то же самое для
helm pull
)
helm install myhelmtest mytest/testchart --username "..." --password "..." --debug
Это приведет к:
[debug] failed to fetch https://myrepo.azurecr.io/helm/v1/repo/_blobs/testchart-0.1.0.tgz : 401 Unauthorized
Я тоже попробовал удачный
helm registry login
с теми же учетными данными заранее, но это не повлияло на приведенные выше команды.
Есть предложения / идеи?
1 ответ
Вы можете передать учетные данные реестра, подходящие для вашего сценария, такие как учетные данные субъекта-службы или токен в области репозитория.
Например, вы можете создать субъект-службу Azure Active Directory с разрешениями на извлечение и отправку (роль AcrPush) в реестр. Затем укажите учетные данные участника-службы для входа в реестр управления. В следующем примере пароль предоставляется с использованием переменной среды:
echo $spPassword | helm registry login mycontainerregistry.azurecr.io \
--username <service-principal-id> \
--password-stdin
Вы также можете войти в реестр со своим индивидуальным удостоверением Azure AD, чтобы отправлять и извлекать диаграммы Helm.
az acr login --name <acrName>
Используйте следующую документацию Azure для аутентификации в репозитории Azure ACR Helm.https://docs.microsoft.com/en-us/azure/container-registry/container-registry-helm-repos#authenticate-with-the-registry