nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
27.44k stars 4.08k forks source link

Proper user agent for Client Login flow #8077

Open rullzer opened 6 years ago

rullzer commented 6 years ago

As noted in https://github.com/nextcloud/server/pull/7754 we have to send more detailed UserAgents when regsitering a new device using the client login flow.

Basically there are 4 tasks:

  1. Come up with a user agent string we need that contains all the info
  2. Send this string properly from the clients
    • Android
    • IOS
    • Desktop
  3. Make sure we also parse it in https://github.com/nextcloud/server/blob/master/core/Controller/ClientFlowLoginController.php#L117 so we show a human readable string
  4. Make sure to parse it on the Secuirity (personal) page so we show it properly.

@ChristophWurst as discussed.

mario commented 6 years ago

For Talk, we now show: "Device name (Nextcloud Talk)" on both iOS and Android. For Nextcloud Android app we show: "Device name".

rullzer commented 6 years ago

@mario ok I think that is fine

But maybe it would be even better to do "Device name (Nextcloud Talk on Android)" or something but pff ;)

Also, (an idea!), we could in the webui show a nice nextcloud talk icon when it is the talk that is connected. Just to make it more visual. I'll create a ticket about that as well.

mario commented 6 years ago

@rullzer the issue is that this appears on the web login page, so that would make it really long, unless the server changes NOT to show a part of it :P I like the idea of showing a Talk icon! :)

@tobiasKaminsky I suggest we do similar thing for the Nc Android app, like we talked, so maybe: "Device name (Nextcloud Files)"? :)

tobiasKaminsky commented 6 years ago

(Nextcloud Talk on Android)"

As the device name is already there, I think Android/iOS is not needed.

"Device name (Nextcloud Files)

There was some discussion to keep the core system as "nextcloud", but I do not 100% remember this.

mario commented 6 years ago

@tobiasKaminsky you can always call your iPhone "Android", and also it's hard to parse device name to know that it's Android.

MorrisJobke commented 6 years ago

What are the next steps here?

rullzer commented 6 years ago

Not something for 14 anymore. Probably still good to do but it also requires a proper format etc.

tobiasKaminsky commented 5 years ago

Do clients need something to do here?

tobiasKaminsky commented 5 years ago

As changing the user agent killed Global Scale once, we have to make sure this does not happen again.

szaimen commented 3 years ago

I suppose this issue is still valid? If not, please close this issue!

michal25 commented 3 years ago

Is it here some possibility to disable useragents with defined string. Such as "Windows"?

The idea is to disable user agents from selected operating systems.

tobiasKaminsky commented 3 years ago

This is only about transparency, not about blocking users/clients based on OS. Please discuss this in a separate issue.