This is a Controlled Document
Inline with GitLab's regulatory obligations, changes to controlled documents must be approved or merged by a code owner. All contributions are welcome and encouraged.
As new GitLab security controls are identified that need to be implemented by the Security Compliance Team for compliance or regulatory reasons, these controls follow an established process in order to make that implementation successful.
These lifecycle phases are managed via GitLab's governance, risk and compliance (GRC) application, ZenGRC. If your GitLab team is interested in using ZenGRC for your risk and compliance needs, please reach out in the GitLab #sec-assurance slack channel.
This document applies to GitLab's security controls being assessed by the Security Compliance Team.
|GitLab Team Members||Responsible for following the requirements of the controls|
|Security Compliance Team||Responsible for execution of security control tests and maintenance of this handbook page|
|Security Compliance Management||Responsible for oversight, escalation and approval of exceptions for this process|
|Security Assurance Management (Code Owners)||Responsible for approving significant changes and exceptions to this procedure|
As new GCF security controls are identified they first must be researched and contextualized to GitLab as a company and to the applicable GitLab systems. The Preparation phase of the control lifecycle covers this initial work required to get controls into a state of ready to be tested.
Additionally, GCF controls that have been previously tested but have an upcoming requirement for renewed testing enter this Preparation phase as well to research and confirm that any changes to the control processes are captured in the updated testing activity.
The testing activity consists of 3 major components:
After testing a decision is made about the controls:
yesthis control enters the Remediation phase while those observations are in the process of being resolved
nothis control enters the Operation phase since the control has been determined to be designed and operating effectively to meet security compliance program needs
Remediation is the phase of the lifecycle where required changed are made to the design of the security control or the process of the control's operation. Remediation is either performed by the observation owner or is tracked by the observation owner if the observation remediation is blocked by another GitLab team's work. The Security Compliance Team is responsible for tracking all validated observation and continually reporting on those observations to ensure they are tracked, prioritized appropriately, and escalated as needed to meet the security compliance program goals.
Controls that are tested with no observations noted during that testing activity are determined to be in an operational state. This indicates that the design and operating effectiveness of this control are at or above the level required to meet the current needs of the security compliance program.
Controls in an operating state will still need to be re-tested annually or quarterly (as determined by the risk rating of the control) to ensure no substantive changes have occured which would impact the design or operating effectiveness of that control; controls move from the operating state back into the preparation state to prepare the control for the next iteration of testing.
Exceptions to this procedure will be tracked as per the Information Security Policy Exception Management Process.