Skip to content
Chart values

Chart values

Policies

At least one is required.

policies:
  - name: my-policy
    publicKey: "00000000-0000-0000-0000-000000000001"
    privateKeySecret:
      name: my-hmac-secrets
      key: my-policy-privateKey
    algorithms:
      contentHash: SHA256
      signingHash: HMACSHA256
    nonce:
      maxAgeInSeconds: 60
    schemes:
      - name: UserScheme
        headers:
          - name: X-UserId
            claimType: userId
FieldDefaultNotes
nameRequired. Becomes an HmacPolicy resource name, so it must be a valid RFC 1123 subdomain.
publicKeyRequired.
privateKeySecret.nameName of a pre-existing Secret.
privateKeySecret.keyKey within that Secret.
algorithms.contentHashSHA256SHA1, SHA256, SHA512
algorithms.signingHashHMACSHA256HMACSHA1, HMACSHA256, HMACSHA512
nonce.maxAgeInSeconds60Replay window, in seconds.
schemes[].nameScheme name.
schemes[].headers[].nameHeader name.
schemes[].headers[].claimTypeheader nameClaim the header maps to.

Private keys are never chart values — only a reference to a Secret that already exists.

Redis

ValueDefaultDescription
redis.enabledtrueDeploy bundled Redis and use the distributed nonce cache. Set false only for single-replica deployments; the chart then refuses replicaCount > 1.

Everything else

ValueDefaultDescription
environmentProductionProduction or Development. Development activates the signing helper on port 8081.
replicaCount1Number of replicas. Values above 1 require redis.enabled=true.
namespacehmac-systemNamespace to deploy into.
image.repositoryzills/hmac-managerVerifier image repository.
image.tagpinned per chart releaseVerifier image tag. See values.yaml for the version a given chart pins.
image.pullPolicyIfNotPresentVerifier image pull policy.
operator.image.repositoryzills/hmac-manager-operatorOperator image repository.
operator.image.tagpinned per chart releaseOperator image tag. Versioned separately from the verifier.
service.port8080Port the ext-authz service listens on.
logging.levelInformationVerbosity of HmacManager’s own messages on both the verifier and the operator. Trace and Debug are per-request; Information covers policy and config changes only. Framework logging (ASP.NET Core, KubeOps) is suppressed below Error regardless.
istio.enabledtrueMaster switch for Istio integration and the MeshConfig instructions in NOTES.txt.
istio.ingressGateway.enabledfalseEnforce on ingress gateway traffic. Requires name and namespace.
istio.ingressGateway.name""Name of the existing Gateway to target.
istio.ingressGateway.namespace""Namespace of that Gateway.
istio.waypoint.enabledfalseEnforce on ambient waypoint traffic. Requires name and namespace.
istio.waypoint.name""Name of the waypoint Gateway.
istio.waypoint.namespace""Namespace of the waypoint.

The chart ships a values.schema.json, so helm install rejects a malformed values file before anything reaches the cluster.

See the Helm chart for how to use these and enforcement for the Istio side.