Skip to content

Enforce application wide terms

Bob Van Landuyt requested to merge bvl-enforce-terms into master

What does this MR do?

This adds the ability for admins to enforce terms in application settings:

Screen_Shot_2018-04-30_at_12.09.55

When the feature is enabled, users are presented with a ToS that they need to accept in order to continue using the web application.

Screen_Shot_2018-05-04_at_10.29.44

Every authenticated request will redirect to the terms page when the user did not accept the terms, after the user accepts they are directed back to where they were going.

API & Git operations are currently not affected.

TODO

  • Add a TermPolicy that can be checked to show/hide the correct buttons on the terms page. That way we can block some permissions that would otherwise result in a redirect.
  • Store the accepted_terms on the user instead of a boolean. That might be required later to enforce users to accept updated terms but it might be hard to migrate, so we'd better do it now.

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/44798

Edited by Filipa Lacerda

Merge request reports