Skip to content

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

Merged
merged 7 commits into from
Oct 18, 2018

Conversation

tomekpapiernik
Copy link
Contributor

Description

Changes proposed in this pull request:

  • Authorization and authentication flow details updated to reflect the current state as outlined in this proposal.
  • Component name changed to "Security"
  • All files related to the documentation image generation updated to use the new component name.

Related issue(s)
#887

Copy link
Contributor

@magicmatatjahu magicmatatjahu left a 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.

Copy link
Contributor

@magicmatatjahu magicmatatjahu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

- displayName: Authorization and Authentication
id: authorization-and-authentication
- displayName: Security
id: security
Copy link

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.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

**Authorization Bearer** request header

@kazydek kazydek added area/documentation Issues or PRs related to documentation area/security Issues or PRs related to security labels Oct 11, 2018
@tomekpapiernik tomekpapiernik added this to the Sprint_Gorilla_2 milestone Oct 12, 2018
@pbochynski pbochynski modified the milestones: Sprint_Gorilla_2, Sprint_Gorilla_3 Oct 12, 2018
@tomekpapiernik
Copy link
Contributor Author

Not able to merge due to CI failing over and over.

@tomekpapiernik
Copy link
Contributor Author

Blocked - the CI keeps failing.

@tomekpapiernik tomekpapiernik merged commit 41d0050 into kyma-project:master Oct 18, 2018
grischperl pushed a commit to grischperl/kyma that referenced this pull request Nov 10, 2020
* Create jobs for cluster-user tests

* Fix release

* Remove old test dir
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/documentation Issues or PRs related to documentation area/security Issues or PRs related to security
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants