[Feature Request] API for dynamic connector registration
Description
It would be really nice to have an option to dynamically register the connector(s) via dex API. Dex API currently allows dynamic client registration as documented here and perhaps could be extended.
My initial thought was to use CRD for that which was mentioned in a bit general topic in #1381 . Taking into account the results of the conversation there, maybe gRPC API for connector could be the first approach?
Reasons
To configure a connector you have to set it up upfront during installation, but later on, if you like to add/replace a new one, you have to edit the configmap and restart dex pod (k8s scenario).
This process could be improved with having an API so dex restart would not be required. Restarting dex is not the best way as well. We have a use case where admins would like to configure new connectors easily (https://github.com/kyma-project/kyma/issues/4537)
Additional note, maybe file watch for config file could be also nice small improvement?
It seems that, dex already have defined CRD for k8s storage, and the storage interface also has defined the CreateConnector method.
What really lack is a router in newServer method defined in dex/server/server.go
There is a PR open for this : #1489
@sks looking forward your pr being merged 👍
@sks any update on your pr ?;-)
@piotrmsc : waiting for green signal from any of the maintainers.
Ping @srenatus / @JoelSpeed / @bonifaido : https://github.com/dexidp/dex/pull/1489
https://github.com/dexidp/dex/pull/3245