Skip to content
Snippets Groups Projects
  1. Dec 06, 2019
  2. Nov 26, 2019
  3. Nov 25, 2019
    • Nick Thomas's avatar
    • Arturo Herrero's avatar
      Encrypt application settings with pre and post deployments · 1180d1db
      Arturo Herrero authored
      We had concerns about the cached values on Redis with the previous two
      releases strategy:
      
      First release (this commit):
        - Create new encrypted fields in the database.
        - Start populating new encrypted fields, read the encrypted fields or
          fallback to the plaintext fields.
        - Backfill the data removing the plaintext fields to the encrypted
          fields.
      Second release:
        - Remove the virtual attribute (created in step 2).
        - Drop plaintext columns from the database (empty columns after
          step 3).
      
      We end up with a better strategy only using migration scripts in one
      release:
        - Pre-deployment migration: Add columns required for storing encrypted
          values.
        - Pre-deployment migration: Store the encrypted values in the new
          columns.
        - Post-deployment migration: Remove the old unencrypted columns
      1180d1db
  4. Nov 21, 2019
    • Arturo Herrero's avatar
      Encrypt application setting tokens · a3f16b6b
      Arturo Herrero authored
      This is the plan to encrypt the plaintext tokens:
      
      First release (this commit):
        1. Create new encrypted fields in the database.
        2. Start populating new encrypted fields, read the encrypted fields or
           fallback to the plaintext fields.
        3. Backfill the data removing the plaintext fields to the encrypted fields.
      
      Second release:
        4. Remove the virtual attribute (created in step 2).
        5. Drop plaintext columns from the database (empty columns after step 3).
      a3f16b6b
  5. Nov 20, 2019
  6. Nov 15, 2019
  7. Nov 04, 2019
  8. Oct 25, 2019
  9. Oct 24, 2019
    • David Wilkins's avatar
      Handle Stored XSS for Grafana URL in settings · 686f757e
      David Wilkins authored
      - Extend Gitlab::UrlBlocker to allow relative urls (require_absolute
        setting).  The new `require_absolute` setting defaults to true,
        which is the existing behavior.
      
      - Extend AddressableUrlValidator to accept `require_abosolute` and
        default to the existing behavior
      
      - Add validation for ApplicationSetting#grafana_url to validate that
        the URL does not contain XSS but can be a valid relative or absolute
        url.
      
      - In the case of existing stored URLs, validate the stored URL does
        not contain XSS. If the stored URL contains stored XSS or is an
        otherwise invalid URL, return the default database column value.
      
      - Add tests for Gitlab::UrlBlocker to test require_absolute setting
      
      - Add tests for AddressableUrlValidator
      
      - Add tests for ApplicationSetting#grafana_url
      686f757e
    • Bob Van Landuyt's avatar
      Only assign merge params when allowed · ec837309
      Bob Van Landuyt authored
      When a user updates a merge request coming from a fork, they should
      not be able to set `force_remove_source_branch` if they cannot push
      code to the source project.
      
      Otherwise developers of the target project could remove the source
      branch of the source project by setting this flag through the API.
      ec837309
  10. Oct 23, 2019
  11. Oct 16, 2019
    • Luke Duncalfe's avatar
      Pass all wiki markup formats through pipelines · 37a39346
      Luke Duncalfe authored
      Previously, when the wiki page format was anything other than `markdown`
      or `asciidoc` the formatted content would be returned though a Gitaly
      call. Gitaly in turn would delegate formatting to the gitlab-gollum-lib
      gem, which in turn would delegate that to various gems (like RDoc for
      `rdoc`) and then apply some very liberal sanitization.
      
      It was too liberal!
      
      This change brings our wiki content formatting in line with how we
      format other markdown at GitLab, so we have a SSOT for sanitization.
      
      https://gitlab.com/gitlab-org/gitlab/issues/30540
      37a39346
    • Ryan Cobb's avatar
      Mask Sentry auth token · 1b0bead0
      Ryan Cobb authored
      This makes it so we mask Sentry's auth token. This mask only occurs in
      the UI.
      1b0bead0
  12. Oct 14, 2019
  13. Oct 11, 2019
  14. Oct 10, 2019
  15. Oct 09, 2019
    • Kerri Miller's avatar
      Avoid #authenticate_user! in #route_not_found · 15bce7f0
      Kerri Miller authored
      This method, #route_not_found, is executed as the final fallback for
      unrecognized routes (as the name might imply.) We want to avoid
      `#authenticate_user!` when calling `#route_not_found`;
      `#authenticate_user!` can, depending on the request format, return a 401
      instead of redirecting to a login page. This opens a subtle security
      exploit where anonymous users will receive a 401 response when
      attempting to access a private repo, while a recognized user will
      receive a 404, exposing the existence of the private, hidden repo.
      15bce7f0
  16. Oct 08, 2019
    • Charlie Ablett's avatar
      Check for recursion and fail if too recursive · 909b38f8
      Charlie Ablett authored
      - List all overly-recursive fields
      - Reduce recursion threshold to 2
      - Add test for not-recursive-enough query
      - Use reusable methods in tests
      - Add changelog
      - Set changeable acceptable recursion level
      - Add error check test helpers
      909b38f8
  17. Oct 01, 2019
  18. Sep 25, 2019
    • Aakriti Gupta's avatar
      Pick only those groups that the viewing user has access to, · f787b126
      Aakriti Gupta authored and mksionek's avatar mksionek committed
      in a project members' list. Add tests for possible scenarios
      
      Re-factor and remove N + 1 queries
      
      Remove author from changelog
      
      Don't use memoisation when not needed
      
      Include users part of parents of project's group
      
      Re-factor tests
      
      Create and add users according to roles
      
      Re-use group created earlier
      
      Add incomplete test for ancestoral groups
      
      Rename method to clarify category of groups
      
      Skip pending test, remove comments not needed
      
      Remove extra line
      
      Include ancestors from invited groups as well
      
      Add specs for participants service
      
      Add more specs
      
      Add more specs
      
      use  instead of
      
      Use public group owner instead of project maintainer to test owner acess
      
      Remove tests that have now been moved into participants_service_spec
      
      Use :context instead of :all
      
      Create nested group instead of creating an ancestor separately
      
      Add comment explaining doubt on the failing spec
      
      Imrpove test setup
      
      Optimize sql queries
      
      Refactor specs file
      
      Add rubocop disablement
      
      Add special case for project owners
      
      Add small refactor
      
      Add explanation to the docs
      
      Fix wording
      
      Refactor group check
      
      Add small changes in specs
      
      Add cr remarks
      
      Add cr remarks
      
      Add specs
      
      Add small refactor
      
      Add code review remarks
      
      Refactor for better database usage
      
      Fix failing spec
      
      Remove rubocop offences
      
      Add cr remarks
      f787b126
  19. Sep 24, 2019
  20. Sep 23, 2019
  21. Sep 20, 2019
Loading