如何在Kubernetes中创建Traefik 2的jwtSource?创建失败求助
解决Traefik Enterprise中JWT认证的authSources创建问题
你遇到的报错是因为authSources是Traefik Enterprise专属的自定义资源(CRD),并非ConfigMap,创建时必须指定Kubernetes资源必填的apiVersion和kind字段。
正确的AuthSource配置示例
apiVersion: traefik.containo.us/v1alpha1 kind: AuthSource metadata: name: jwt-source spec: jwt: signingSecret: super-secret
apiVersion固定为traefik.containo.us/v1alpha1,这是Traefik Enterprise自定义资源的标准版本kind必须设为AuthSource,对应官方文档里的authSources定义metadata.name是该资源的标识,后续配置JWT中间件时需要引用这个名称spec.jwt.signingSecret填写你的JWT签名密钥
错误原因说明
你之前的YAML仅包含authSources层级的配置,但缺少Kubernetes资源的核心必填字段apiVersion和kind,导致kubectl验证资源时失败。
创建资源与引用
- 用kubectl应用上述配置:
kubectl apply -f resource.yaml
- 在JWT中间件中引用该AuthSource:
apiVersion: traefik.containo.us/v1alpha1 kind: Middleware metadata: name: jwt-auth spec: jwt: source: jwt-source # 对应AuthSource的metadata.name
内容的提问来源于stack exchange,提问作者Dolphin
相关产品推荐
相关产品推荐

