|
1 |
| -# Securing repositories |
| 1 | +# Securing Repositories |
2 | 2 |
|
3 |
| -- [Securing repositories](#securing-repositories) |
| 3 | +- [Securing Repositories](#securing-repositories) |
4 | 4 | - [Prerequisites](#prerequisites)
|
5 | 5 | - [Access controls](#access-controls)
|
6 | 6 | - [Organisation-level settings](#organisation-level-settings)
|
@@ -35,14 +35,16 @@ This guide lays out security best practice for Github repositories. This set of
|
35 | 35 |
|
36 | 36 | ### Teams setup
|
37 | 37 |
|
38 |
| -Because of baseline visibility configurations, you must setup Github teams in order to provide team members access to repos. The minimum recommended setup is as follows: |
| 38 | +Because of baseline visibility configurations, you must setup GitHub teams in order to provide team members access to repositories. The minimum recommended setup is as follows: |
39 | 39 |
|
40 | 40 | - Create one team with the name of your programme (e.g. `Engineering Quality Framework`). Add all required members to this team.
|
41 |
| -- Create one child team within the team, for admins only (e.g. `Engineering Quality Framework Admins`). Add admins only to this team. Set the visibility of the team to `Secret`. |
42 |
| -- Create a second child team, for code owners (e.g. `Engineering Quality Framework Code Owners`). Add relevant members to this team, and reference in the CODEOWNERS file (example [here](https://github.com/NHSDigital/software-engineering-quality-framework/blob/master/.github/CODEOWNERS)). Set the visibility of the team to `Secret`. |
| 41 | +- Create one child team within the team, for admins only (e.g. `Engineering Quality Framework Admins`). Add admins only to this team. |
| 42 | +- Create a second child team, for code owners (e.g. `Engineering Quality Framework Code Owners`). Add relevant members to this team, and reference in the CODEOWNERS file (example [here](https://github.com/NHSDigital/software-engineering-quality-framework/blob/master/.github/CODEOWNERS)). |
43 | 43 | - For each repo in your programme (e.g. `software-engineering-quality-framework`), under the `Manage Access` option in `Settings`, set the general team to have `Write` access and the admins team to have `Admin` access.
|
44 | 44 |
|
45 |
| -Depending on your use case, you may want to create additional teams (e.g. a read-only access team, or different teams granting access to different projects). This is welcomed by the framework, as long as the teams provide clarity on the role they encompass, remain consistent and are applied consistently to your repos. |
| 45 | +Child teams inherit the parent's access permissions, simplifying permissions management for large groups. Members of child teams also receive notifications when the parent team is `@mentioned`, simplifying communication with multiple groups of people. |
| 46 | + |
| 47 | +Depending on your use case, you may want to create additional teams (e.g. a read-only access team, or different teams granting access to different projects). This is welcomed by the framework, as long as the teams provide clarity on the role they encompass, remain consistent and are applied consistently to your repositories. |
46 | 48 |
|
47 | 49 | ## Code security
|
48 | 50 |
|
|
0 commit comments