dexidp / dex

OpenID Connect (OIDC) identity and OAuth 2.0 provider with pluggable connectors
https://dexidp.io
Apache License 2.0
9.41k stars 1.69k forks source link

Added Discovery to grpc #3598

Closed koendelaat closed 1 month ago

koendelaat commented 3 months ago

Overview

Adds the discovery information to the API

What this PR does / why we need it

Allow API clients to retrieve important information regarding dex config (e.g. issuerUrl)

Use-case:

API is being used to create clients, however to use this client the issuerUrl is required

koendelaat commented 1 month ago

@nabokihms, Can you add the required labels?

nabokihms commented 1 month ago

@koendelaat sure I can! Could you please share why do we need this feature?

koendelaat commented 1 month ago

@koendelaat sure I can! Could you please share why do we need this feature?

This allows for API clients to get information about the Dex server.

Especially when used in Infrastructure as Code (e.g. Terraform, Crossplane), this information can be used to provision other resources that might require this information (e.g. issuerUrl required by oauth2-proxy to do token validation).

I've extended the terraform provider with this functionality based on this PR, see https://github.com/koendelaat/terraform-provider-dexidp/ and https://registry.terraform.io/providers/koendelaat/dexidp/latest/docs/data-sources/discovery