Auto trigger login for a particular method or hide default login

Hi there,

I have seen Rename 3rd Party Integration Logins where not being able to rename the login providers can lead to great confusion for the customer(s). I understand if there’s no safe way to change those labels, but it would be good if we could possibly do one of the following:

  1. Either pass a URL that triggers a button click automatically for a particular login provider and starts the login flow, so the user does not see the login page, perhaps something like: https://my.zammad.example/#login?provider=saml.

  2. The ability to hide the default login form - as having that along with SAML or any other login provider can cause confusion, particularly when we are using a single source for all users (I imagine this is quite a common problem).

Grafana solves this well be allowing a flag in the config to disable the default login form or allowing a method to trigger automatically. See the Disable login form and Automatic OAUTH login flags Grafana Authentication | Grafana Labs.

I have also seen How to automatically redirect user to OAuth2 login page?, but I’m still no sure how if it’s possible to automatically take the user to the login form or hide the default one.

Thank you.

Meezaan-ud-Din

2 Likes

Not on Zammad, but on another system we use I have hidden the login form to push people towards the 3rd party login.
On zammad’s login page there is a form id='login' which contains just the form - if you add/modify the CSS so #login has display:none; then it should disappear.

You could add a custom CSS to /assets/custom and use nginx to inject it onto the login page - a trick I picked up from this thread which has the details.

Than you @tomsparrow - we are running a helm chart so I’m not entirely comfortable with changing the code and building my own container to deploy as it will make updates much harder. It’s a possibility if things come down to it, but I could wait for a more graceful solution (and that might do the same thing, but just via config instead of via a code change).

An option to hide the local login option when third party login options are enabled (google, saml etc) would be great.