nextcloud / nextcloud/server

Login webflow v3 to support simple signup and global scale

Open
#29,542 6 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage backport-request client: 💻 desktop enhancement feature: authentication
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are interested into the same feature.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Is your feature request related to a problem? Please describe.
As briefly discussed with @skjnldsv using login flow v2 is not possible, as the Desktop client does not know to which provider it should connect.

Describe the solution you'd like
So we need a "v3" with a gateway

  • Desktop starts simple sign up in browser with generated token
    • pings nc.com/signup for continuous monitoring (same like v2)
  • User chooses provider on web site, creates account, etc.
  • after successful creation of the account the desired provider send nc:// info to Desktop via /signup (identified via token)

Additionally this needs to be backported to at 23/22/21 since else Apple M1 clients will need to rely on latest server version or 23+ which will likely cause issues in support at some point.

Motivation:

  • QT for Apple M1 currently does not support QT WebEngine
  • there might be proxy settings where it is better to use standard browser for this signup/login
  • getting rid of v1 code on Desktop, as it is only used for preferred providers

Describe alternatives you've considered
none.

Additional context
First step is for the files-team to align the API with the clients-team or Tobias and Desktop-dev(s) respectively

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing login flow v2 and the proposed nc.com/signup gateway, including the token-based /signup handoff to Desktop. Coordinate the API between the files team and clients team; done means the v3 signup flow works across providers and is backportable to versions 21, 22, and 23.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
api, authentication, desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.