|
| 1 | +# Collector for Confluence |
| 2 | +Collects meta-information about conducted threat modeling activities from Confluence wiki pages. |
| 3 | + |
| 4 | +## Meta-information about a Threat Modeling Activity |
| 5 | + |
| 6 | +In the OWASP Foundation community article (Nov 2023) [Threat Modeling Process](https://owasp.org/www-community/Threat_Modeling_Process#threat-model-information), |
| 7 | +lists following meta-information for a threat model: |
| 8 | + |
| 9 | +> Information identifying the threat model typically includes the following: |
| 10 | +> |
| 11 | +> 1. Application Name: The name of the application examined. |
| 12 | +> 2. Application Version: The version of the application examined. |
| 13 | +> 3. Description: A high level description of the application. |
| 14 | +> 4. Document Owner: The owner of the threat modeling document. |
| 15 | +> 5. Participants: The participants involved in the threat modeling process for this application. |
| 16 | +> 6. Reviewer: The reviewer(s) of the threat model. |
| 17 | +
|
| 18 | +However, for the purpose of metric collection for DSOMM we adjusted our information demand to: |
| 19 | + |
| 20 | +1. **Application Name**: The name of the application examined. |
| 21 | +2. **Team Name**: The name of the team that owns/maintains the application. |
| 22 | +3. **Title**: The title summarizing the scope or question of the threat modeling. |
| 23 | +4. **Date**: The date when the threat modeling activity was conducted. |
| 24 | +5. **Links**: The list of links to the _threat modeling document_ (main source) |
| 25 | + and to supplementary reference material like: |
| 26 | + - recorded drawings or pictures from physical/virtual whiteboards (e.g. Miro boards) |
| 27 | + - resulting tickets (e.g. JIRA issues) |
| 28 | + |
| 29 | +See also: |
| 30 | + |
| 31 | +* Blog "Let's Talk About MedSec" (24 Apr 2022): [Threat Modeling Knowledge Bases and Templates](https://tmart234.github.io/threat-model-template/) |
| 32 | +* GitHub Repository from [Izar Tarandach](https://owasp.org/www-board-candidates/2023/izar_tarandach): [izar/pytm](https://github.com/izar/pytm) : |
| 33 | + A Pythonic framework for threat modeling |
| 34 | + |
| 35 | +## Quickstart |
| 36 | +Prerequisite: Python 3 must be installed. |
| 37 | + |
| 38 | +### Installation |
| 39 | +Steps: |
| 40 | + |
| 41 | +1. Clone the repository source-code |
| 42 | +2. Make sure all required packages are installed |
| 43 | + |
| 44 | +Example: |
| 45 | +```shell |
| 46 | +git clone https://github.com/devsecopsmaturitymodel/collector-confluence.git |
| 47 | +cd collector-confluence |
| 48 | +pip install -r requirements.txt |
| 49 | +``` |
| 50 | + |
| 51 | +### Configuration |
| 52 | +We recommend to prepare a `.env` file and specify the confluence URL, account and credentials there. |
| 53 | + |
| 54 | +Example file `.env` (with anonymized data): |
| 55 | +``` |
| 56 | +CONFLUENCE_URL='https://example.atlassian.net/wiki' # change to your Confluence cloud URL |
| 57 | +CONFLUENCE_LOGIN='username@example.com' # change to your account name/email |
| 58 | +CONFLUENCE_PASSWORD='' # fill in your API token from your Atlassian profile |
| 59 | +``` |
| 60 | +However, you can also set those environment-variables separately. |
| 61 | +In case both are present, the `.env` file and environment-variables, then the environment-variables are finally used. |
| 62 | + |
| 63 | +### Run |
| 64 | +Run the Python executable script (e.g. on Linux and macOS): |
| 65 | +```shell |
| 66 | +./confluence_collector.py |
| 67 | +``` |
0 commit comments