-
Notifications
You must be signed in to change notification settings - Fork 1.3k
[oidc] Setup db #15305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[oidc] Setup db #15305
Conversation
|
||
Issuer string `gorm:"column:issuer;type:char;size:255;" json:"issuer"` | ||
|
||
Data datatypes.JSON `gorm:"column:data;type:text;size:65535" json:"data"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the idea to store common properties such as ClientID
, ClientSecret,
RedirectURL` in the generic JSON structure? Also wouldn't we need to look up entries by domain?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issuer is the domain, as per the oidc spec
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, for now we're storing them as json
type OIDCClientConfig struct { | ||
ID uuid.UUID `gorm:"primary_key;column:id;type:char;size:36;" json:"id"` | ||
|
||
Issuer string `gorm:"column:issuer;type:char;size:255;" json:"issuer"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is the issuer referring to? a user?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's the issuer as per the OIDC spec. It can be google for @google.com domains, but other one also.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Issuer (URL) is the ID of a IdP. That's also what is used to associate and validate the ID-tokens.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it Issuer or Issuer Identifier?
From the spec
Issuer
Entity that issues a set of Claims.Issuer Identifier
Verifiable Identifier for an Issuer. An Issuer Identifier is 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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is the Issuer Identifier
indeed. But it's shortened to simple Issuer
(or even iss
when talking about claims) in the details of implementation.
So, the issuer is actually an entity, but on the API level we're naming the URL as such.
Description
Initial db setup for OIDC Client Config
Related Issue(s)
How to test
Unit tests
Release Notes
Documentation
Werft options:
If enabled this will build
install/preview
Valid options are
all
,workspace
,webapp
,ide
,jetbrains
,vscode
,ssh