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

Site Accounts service for API keys #1506

Merged
merged 67 commits into from
Mar 3, 2021
Merged

Site Accounts service for API keys #1506

merged 67 commits into from
Mar 3, 2021

Conversation

Daniel-WWU-IT
Copy link
Contributor

@Daniel-WWU-IT Daniel-WWU-IT commented Mar 1, 2021

This update adds a new service to Reva that handles site accounts creation and management. Registered sites can be assigned an API key through a simple web interface which is also part of this service. This API key can then be used to identify a user and his/her associated (vendor or partner) site.

Furthermore, Mentix was extended to make use of this new service. This way, all sites now have a stable and unique site ID that not only avoids ID collisions but also introduces a new layer of security (i.e., sites can only be modified or removed using the correct API key).

Note: The old registration APIs were removed in this PR; it is thus mandatory to update the web applications as well, and somehow allow the users to create an account.

@butonic
Copy link
Contributor

butonic commented Mar 1, 2021

We wanted to add account managemen to the cs3 apis as well as ocis has an accounts service, which duplicated responsibilities and made us configure revas userprovider to talk to glauth which would talk to the ocis accounts service.

Instead, we decided to use whatever user management is in place and rely on reva to reaid users from there. We will move the ui and persistence from our accounts service to glauth to have an embeddable user management with an ldap api.

Users and groups can then be managed using existing tools.

For guest accounts this means they need to be provisioned in an ldap server, or in whatever backend is configured for revas userprovider (and groupprovider). CERN is using a rest api and they have a process to onboard guests.

@Daniel-WWU-IT does this pr also add a new backend for the user and group providers? Or do you want to be able to manage users using the CS3 api. For the letter you should add a PR to the CS3 apis repo. Ping me if you would like to collaborate on this. We have existing protobuf spects to manage accounts and groups in the existing ocis accounts service.

I just want to make sure we are not duplicating efforts.

@lgtm-com
Copy link

lgtm-com bot commented Mar 1, 2021

This pull request introduces 1 alert when merging 98f7bfa into 06aa61f - view on LGTM.com

new alerts:

  • 1 for Incorrect conversion between integer types

@Daniel-WWU-IT
Copy link
Contributor Author

Daniel-WWU-IT commented Mar 1, 2021

@butonic This is something entirely different. It has nothing to do with end users or groups. These accounts are to manage the registered sites and generate API keys for them, which in return are used (or will be used) in the web apps. The service name could be changed to make this a bit more clear, I am open to better names here ;) Maybe something like siteacc(ounts)?

@butonic
Copy link
Contributor

butonic commented Mar 1, 2021

Hm, I already feared I did not fully understand what this is about ;-)

Naming is hard. sites is also not quite right. siteacc is a good compromise I think.

@Daniel-WWU-IT Daniel-WWU-IT changed the title User Accounts service for API keys Site Accounts service for API keys Mar 1, 2021
@Daniel-WWU-IT
Copy link
Contributor Author

Renamed. Indeed a much better name!

@labkode labkode merged commit 8d4cf01 into cs3org:master Mar 3, 2021
ffurano pushed a commit to ffurano/reva that referenced this pull request Apr 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants