【Azure Kubernetes】通过 kubelogin 进行非交互式登录AKS
问题描述
当对AKS的登录方式(认证和授权)从“Local Account with Kubernetes RBAC ”改变为“Azure AD authentication with Azure RBAC”.
通过 kubectl 连接AKS会要求交互式登录,需要通过浏览器输入认证码后关联azure登录用户。
那么,是否有办法可以避免这种交互式登录呢?
问题解答
答案是可以的!在Azure K8S的官方文档中,介绍了非交互式登录的方式 --- 使用 kubelogin 工具。
因为 kubectl 使用的是 kubelogin 命令登录获取认证信息。
- 默认情况下,login的方式为 devicecode。
- 通过 kubelogin convert-kubeconfig -l azurecli 修改后,login方式就变为 azure cli。
- azure cli 可以通过az login -u <user name> -p <pwd> 来实现非交互式登录。
修改登录方式前后 kube config文件的对比如下:
当然,kubelogin还支持更多的登录方式,如:Service Principal, Identity... 详见: https://azure.github.io/kubelogin/concepts/login-modes.html
PS: 如果您本机执行 kubelogin工具提示说 这个命令没有注册,Windows系统中需要先安装,然后设置环境变量路径(PATH)。
参考资料
通过 kubelogin 进行非交互式登录:https://docs.azure.cn/zh-cn/aks/managed-azure-ad#non-interactive-sign-in-with-kubelogin
Azure Kubelogin with Azure CLI: https://azure.github.io/kubelogin/concepts/login-modes/azurecli.html
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?