In order to make it easier to configure the OIDC provider in both Dex and OIDC clients (e.g. oidc-gatekeeper), this charm should have the capacity of broadcast its issuer value to OIDC client charms that would like to integrate to it.
The interface schema should be similar to:
# provider side
{
# metadata
...
"required": {
"dex-issuer-url",
},
"properties": {
"dex-issuer-url" {
"type": "string",
"description": "This is the canonical URL that OIDC clients will use to refer to dex"
},
}
}
# requirer side does not share data, so the schema is only metadata like description and name
For now the issuer-url will be the only shared value, but the library can be expanded for more.
What needs to get done
Create a library that handles the interface
Add the relation to the dex-auth charm
Add unit/integration tests as required
Definition of Done
This charm broadcasts its information (for now limited to just the issuer) regardless if an OIDC client is integrated.
Context
In order to make it easier to configure the OIDC provider in both Dex and OIDC clients (e.g. oidc-gatekeeper), this charm should have the capacity of broadcast its
issuer
value to OIDC client charms that would like to integrate to it.The interface schema should be similar to:
For now the
issuer-url
will be the only shared value, but the library can be expanded for more.What needs to get done
Definition of Done
This charm broadcasts its information (for now limited to just the
issuer
) regardless if an OIDC client is integrated.