Icon

You are viewing the documentation of TeamCity 2018.x, which is not the most recently released version of TeamCity.
View this page in the latest documentation or refer to the listing to choose the documentation corresponding to your TeamCity version.

 

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

See also details in the issue tracker.

Personal User Data Processing

In relation to TeamCity product JetBrains does not collect any personal data of the final TeamCity installation users. Related documents governing relationship with JetBrains can be found on the official web site: privacy policy, terms of purchase, TeamCity license agreement.

The notes below can be useful when assessing how your usage of TeamCity complies with the General Data Protection Regulation (GDPR) (EU) 2016/679 regulation. These notes are meant to address the most basic questions and serve as an input to the assessment of your specific TeamCity installation.

TeamCity and Users' Personal Data

The most important user-related data stored by TeamCity is:

  • full name and username - stored in the database and shown on user's profile and whenever the user is referenced. When a user triggers a buld, these are also stored in the build's parameters and passed into the build
  • user's email - stored in the database and shown on user's profile, used to send out notifications
  • IP adderss of the clients accessing the server - can appear in the internal logs

TeamCity insternal logs can also record some unstructured user-related information (e.g. submitted by the user or sent by the browser with the HTTP requests)

Deleting the User Data

When you want to delete personal data of a specific user, the way to do it is to delete the user in TeamCity. This way all the references to the user will only store numeric user id and full name, username as well as email will not be stored anymore. Note that Audit records will get
If the user triggered any bulds (i.e. had "Run build" permission in any of the projects which are still present on the server), user's username and full name will be recorded in the build's parameters as text values as those were part of the build's "environment". If you need to remove those, you can either delete the related builds (and all the builds which artifact- or snapshot-depend on them), or delete parameters of those affected builds (those parameters are stored in archived files under <TeamCity Data directory>\system\artifacts***\.teamcity\properties directories).
After the user deletion and other data cleaning, make sure to reset search index to prune possibly cached data of the deleted user from the search index.

User Agreement

If you want the users to accept a special ageement before using your TeamCity instance, you can install a dedicated plugin developed by JetBrains for this purpose. Refer to the plugins's documentation for more details.

Encryption

If you want to encrypt the data used by TeamCity, it is recommedned to use generic, non-TeamCity-specific tools for this as TeamCity does not provide dedicated funcaionality.
TeamCity stores the data in the SQL database and on the file system.
You can configure the database to store the data in encrypted form and use secure JDBC-backed connection to the database (configured in the database.properties).
Also, you can configure encryption on the disk storage on the OS level.

Logs and Debugging Data

If you want to ensure that you do not store the internal TeamCity logs for more than a limited amount of days, you can configure internal logging to rotate the log files each day and limit the number of files to keep. TeamCity agents generally do not operate with any user-related data in a structural way, but if you need to ensure the logs are regularly rotated on the agent, you will need to configure agent logging the same way.
Per-day rotation can be configured by adding <param name="rotateOnDayChange" value="true"/> line within all <appender name="ROLL" class="jetbrains.buildServer.util.TCRollingFileAppender"> appenders.

hidden-data
https://youtrack.jetbrains.com/issue/TW-52220
TeamCity can also store diagnostics data like thread dumps which can record user-related data in unstructured way. It is recommended to review the content of the <TeamCity Home>\logs directory and ensure that no old files are preserved in there.
hidden-data
https://youtrack.jetbrains.com/issue/TW-54874
There is a known issue that logs\catalina.out file if not rotated automatically at all. It is recommended to establish an automatic procedure to rotate the file regularly.

Customizations

These notes only address bundled TeamCity functionality with the most common documented settings. You should assess your specific TeamCity instalaltion considering customizations like the configured build scripts, installed plugins, external systems communicating with Teamity via API, etc.

TeamCity Release Cycle

The information below can be used for reference purposes only.

...