## About this example

Threat modeling is a pivotal security technique in application development. This example provides:

- **Flow of sensitive data**: Shows how user data traverses the system.
- **Potential vulnerabilities**: Identifies where data might be exposed.
- **Security mechanisms**: Highlights areas where encryption and admin tools are applied.
- **Admin/User differentiation**: Differentiates between user access and admin access points.

## When to use

- **Initial security planning**: When outlining the security measures for a new web application.
- **Security training**: To educate new team members on security best practices.
- **Security assessment**: As a checklist during security audits to ensure no critical points are unprotected.

## How to use

1. **Start editing**: Duplicate example file and double click on the diagram.
2. **Customize diagram**: Add/modify nodes, groups, relationships using Eraser’s simple diagram-as-code syntax. Use icons where possible to enhance understanding.
3. **Customize layout**: Drag elements on the diagram directly on the canvas to manipulate layout.
4. **Collect feedback**: Share file with collaborators and encourage them to use the comments feature for feedback.

## Related Examples

**AWS threat model**  
Visualize safeguarding user data through encryption and AWS services with this threat model example.](https://www.eraser.io/examples/aws-threat-model)

**Data flow diagram for online payments**  
Visualize the intricate pathways of user transactions with the online payments data flow example.](https://www.eraser.io/examples/data-flow-diagram-for-online-payments)

**Stripe payment state machine**  
Streamline your e-commerce transactions with the Stripe Payment State Machine example.](https://www.eraser.io/examples/stripe-payment-state-machine)

**Jenkins CI/CD**  
Visualize and optimize your software delivery process with the Jenkins CI/CD Pipeline Workflow example.](https://www.eraser.io/examples/jenkins-ci-cd)

**Netflix model testing process**  
Refine your feature development strategy with the Netflix Model Testing Process example.](https://www.eraser.io/examples/netflix-model-testing-process)

**Uber rider session state machine**  
Visualize the user interaction flow within a ride-hailing application with this user journey example.](https://www.eraser.io/examples/uber-rider-session-state-machine)
