-
Notifications
You must be signed in to change notification settings - Fork 403
Update authorization and authentication flow details + change component name to "security" #1219
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
Conversation
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.
Please change in the whole code of Jenkinsfile authorization_and_authentication
var to security
var.
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.
LGTM
docs/manifest.yaml
Outdated
- displayName: Authorization and Authentication | ||
id: authorization-and-authentication | ||
- displayName: Security | ||
id: security |
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.
L.G. suggested to change the order of the components and move the Security topic at the top of the components' list - to important to be at the bottom.
|
||
1. The user opens the Kyma Console UI. If the Console application doesn't find a JWT token in the browser session storage, it redirects the user's browser to the Open ID Connect (OIDC) provider, Dex. | ||
2. Dex lists all defined Identity Provider connectors to the user. The user selects the Identity Provider to authenticate with. After successful authentication, the browser is redirected back to the OIDC provider which issues a JWT token to the user. After obtaining the token, the browser is redirected back to the Console UI. The Console UI stores the token in the Session Storage and uses it for all subsequent requests. | ||
3. The Console UI requests for a list of cluster resources in Environments from the API Server. The API Server is not accessible directly. The request is routed through the API Server Proxy - a simple Nginx reverse proxy exposed through an Istio Ingress. | ||
4. The request arrives at the Kubernetes API Server. The Kubernetes API Server validates the JWT token it received and directs the request accordingly if the validation is successful. | ||
3. The Authorization Proxy validates the JWT token passed in the `Authorization Bearer` request header. It extracts the user and groups details, the requested resource path, and the request method from the token. The Proxy uses this data to build an attributes record, which it sends to the Kubernetes Authorization API. |
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.
**Authorization Bearer** request header
64eb438
to
8460139
Compare
Not able to merge due to CI failing over and over. |
8460139
to
69d5b03
Compare
Blocked - the CI keeps failing. |
efd1d62
to
95628e4
Compare
* Create jobs for cluster-user tests * Fix release * Remove old test dir
Description
Changes proposed in this pull request:
Related issue(s)
#887