Skip to content
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

Secure the API and Dashboard #505

Open
benoit-cty opened this issue Feb 25, 2024 · 2 comments
Open

Secure the API and Dashboard #505

benoit-cty opened this issue Feb 25, 2024 · 2 comments
Assignees
Labels
P1 Priority 1

Comments

@benoit-cty
Copy link
Contributor

CodeCarbon API and Dashboard are open to everyone. We think it will be better to have a way to segregate the data : only the owner of the organization could decide who has access to the data.

We need to allow:

  • Keycloak user management : we choose this tool to allow third party authentication like GitHub or private company LDAP.
  • Create an account on the user interface
  • Create organizations/teams/projects and give access to them to other account
  • Create token for the API
  • Support authentication with token in the API
  • Secure the dashboard to allow users to view only the data they are allowed to.
  • The aggregation api must read only the data the user are allowed to
  • Keep the option to share data publicly
@inimaz
Copy link
Contributor

inimaz commented Feb 25, 2024

  • We should create a CodeCarbon theme for the login and register pages. Keycloak allows to override them. See https://www.keycloak.org/docs/latest/server_development/#_themes
  • Maybe less priority, Keycloak allows to have roles. We can have read-only users, team-admin, organisation-admin... And allow team-members to manage these roles via the API.

@benoit-cty benoit-cty added the P1 Priority 1 label Mar 10, 2024
@inimaz inimaz self-assigned this May 3, 2024
@SaboniAmine
Copy link
Collaborator

Ongoing development, which can be tracked on https://github.com/orgs/mlco2/projects/4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P1 Priority 1
Projects
None yet
Development

No branches or pull requests

3 participants