Skip to content

Add arkose_labs_data_exchange_key column to application_settings table

What does this MR do and why?

Resolves Add arkose_labs_data_exchange_key to application setting task of https://gitlab.com/gitlab-org/modelops/anti-abuse/team-tasks/-/issues/529+.

This setting will hold the key shared with ArkoseLabs used to encrypt/decrypt the Data Exchange payload sent by GitLab to ArkoseLabs.

Data Exchange lets Arkose customers pass extra telemetry data ... between their servers and Arkose Labs servers. This happens when a new Arkose session is created. By augmenting the data Arkose Labs already collects with data that only our customers can collect, we can improve the Platform’s effectiveness. The data is sent with each parameter/value pair as an element in an overall JSON structure. It is encrypted with an AES-256-GCM cipher to prevent data tampering.

The new setting is used in !139070 (merged).

Database changes checklist

  • Check that the db:check-migrations pipeline job has run successfully and the migration rollback behaves as expected.
    • Ensure the db:check-schema job has run successfully...
  • Manually trigger the database testing job (db:gitlabcom-database-testing) in the test stage.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Eugie Limpin

Merge request reports