You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用托管身份持久挂载AKS File Share 密钥轮换后出现权限问题

问题根因

  • 当前使用的Storage Class默认仅在PVC首次创建时拉取一次存储账户密钥做本地缓存,不会自动同步更新,存储账户密钥轮换后旧密钥已失效,就会返回mount error(13): Permission denied错误
  • 若UAMI权限在密钥轮换后被意外修改、回收,也会触发相同报错

修复步骤

1. 验证UAMI权限有效性

  • 进入对应存储账户的「访问控制(IAM)」页面,确认集群绑定的UAMI在存储账户范围同时持有Reader和Storage Account Key Operator Service Role两个角色,无拒绝分配规则覆盖、无权限继承异常
  • 若AKS使用kubenet网络模式,额外确认节点池kubelet身份也持有上述两个角色权限

2. 调整Storage Class配置开启密钥自动更新

如果你当前使用的是Azure File CSI驱动(AKS 1.21及以上版本默认使用),在Storage Class配置中添加storageAccountKeyRotateInterval参数开启自动拉取新密钥,参考配置如下:

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: azurefile-csi-custom
provisioner: file.csi.azure.com
parameters:
  skuName: Standard_LRS # 替换为实际存储账户SKU
  storageAccount: 你的存储账户名称 # 固定使用指定存储账户时填写,不填则由驱动自动创建匹配SKU的存储账户
  storageAccountKeyRotateInterval: "12h" # 每12小时自动拉取一次最新存储账户密钥,可根据业务需求调整间隔
reclaimPolicy: Delete
volumeBindingMode: Immediate
mountOptions:
  - file_mode=0777
  - dir_mode=0777
  - vers=3.0
  - actimeo=30
  - mfsymlinks

3. 重建资源验证生效

  1. 删除原有故障的PVC、旧版本Storage Class
  2. 应用上述修改后的新Storage Class配置
  3. 重新创建PVC、业务部署
  4. 验证Pod可以正常启动,Azure File Share挂载、读写功能正常

注意事项

  • 若当前使用的是旧的in-tree类型kubernetes.io/azure-file存储类,建议直接迁移到CSI驱动版本,in-tree驱动已停止维护,不支持密钥自动轮换功能
  • 若不想开启自动密钥轮换,可在每次存储账户密钥轮换后手动删除PVC关联的存储密钥Secret,集群会自动触发UAMI重新拉取最新密钥完成更新

内容的提问来源于stack exchange,提问作者Kalirajan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 10:48:04