metasfresh / metasfresh-webui-frontend-legacy

metasfresh Webui Frontend
GNU General Public License v2.0
57 stars 35 forks source link

OAuth/ OAuth2 delegated access to metasfresh #837

Open metas-mk opened 7 years ago

metas-mk commented 7 years ago

Type of issue

Feature request

Current behavior

Currently, it's only possible to have access to metasfresh with username/ password. It's not possible to login in another application and receive a delegated access to metasfresh with right credentials.

Expected behavior

Allow users to choose to have their login via 3rd party application.

Additional details added by @cadavre it works like:

  1. on front-end we add buttons like „Login with…”
  2. button opens popup window or another page of given provider (Facebook, Google…)
  3. after success login on providers site (or clicking „Allow”) – provider makes a redirect response to internal authorization endpoint (that would be somewhere on your side – backend needs to decide which user is logging in)

Let's start with GitHub Login first. Later Twitter, G+ and others.

cadavre commented 7 years ago

Things to think about:

  1. What about creating new users?
  2. Merging with already existing accounts (backend).
  3. What shall happen if user clicks "Login with GitHub" but hasn't connected his regular account with GitHub first?

Front-end site:

  1. Add "Login with GitHub" button.
  2. Settings: add "Connect with GitHub" button.
damianprzygodzki commented 7 years ago

Waiting here for API.

Connecting with GitHub should be added to settings window by the widget, and here we can add something like 'socialButton' widget type, that would be redirecting to a process of authorization.

teosarca commented 7 years ago

Pls describe what API is needed, i.e. what information shall backend provide/store ?

damianprzygodzki commented 7 years ago

@teosarca

For frontend shouldn't be difference what option user uses to login.

teosarca commented 7 years ago

Ok, have to read it. Thanks.

teosarca commented 7 years ago

backend task: https://github.com/metasfresh/metasfresh-webui-api/issues/37