JWT Identity Matcher
JwtIdentityMatcher specifies matching workloads with JWT identities.
For example, the following configuration will match only those workloads that
were authenticated by means of an
OIDC ID Token
issued by https://mycompany.corp for one of the subjects us-east-datacenter1-vm007 or
us-west-datacenter2-vm008:
issuer: "https://mycompany.corp"
subjects:
- "us-east-datacenter1-vm007"
- "us-west-datacenter2-vm008"
In those cases where an OIDC ID Token from a given issuer includes a map of fine-grained attributes associated with a workload, it is possible to define rules that match those attributes.
E.g., the following configuration will match a set workloads that
were authenticated by means of an
OIDC ID Token
issued by https://mycompany.corp and include 1) attribute region with one of the values
us-east or us-west and 2) attribute instance_role with the value app-ratings:
issuer: "https://mycompany.corp"
attributes:
- name: "region"
values:
- "us-east"
- "us-west"
- name: "instance_role"
values:
- "app-ratings"
AttributeMatcher
AttributeMatcher specifies a matching attribute.
| Field | Description | Validation Rule |
|---|---|---|
name | string E.g., | string = { |
values | List of string E.g., Empty list means match any value. | repeated = { |
JwtIdentityMatcher
JwtIdentityMatcher specifies matching workloads with JWT identities.
| Field | Description | Validation Rule |
|---|---|---|
issuer | string The value must be a case sensitive URL using the https scheme that contains scheme, host, and optionally, port number and path components and no query or fragment components. E.g., See https://openid.net/specs/openid-connect-core-1_0.html#IDToken | string = { |
subjects | List of string The value must consist of ASCII characters. E.g., Empty list means match OIDC ID Tokens with any subject. | repeated = { |
attributes | List of tetrateio.api.onboarding.authorization.jwt.v1alpha1.AttributeMatcher Empty list means match OIDC ID Tokens with any attributes. | repeated = { |