|
| 1 | +# Security Policy |
| 2 | + |
| 3 | +## Supported Versions |
| 4 | + |
| 5 | +We actively support the following versions with security updates: |
| 6 | + |
| 7 | +| Version | Supported | |
| 8 | +| ------- | ------------------ | |
| 9 | +| Latest | :white_check_mark: | |
| 10 | +| < Latest | :x: | |
| 11 | + |
| 12 | +## Reporting a Vulnerability |
| 13 | + |
| 14 | +If you discover a security vulnerability, please **do not** open a public issue. Instead, please report it privately to: |
| 15 | + |
| 16 | +**Email**: dev@elu-energy.it |
| 17 | + |
| 18 | +Please include the following information in your report: |
| 19 | + |
| 20 | +- Type of vulnerability (e.g., XSS, SQL injection, authentication bypass) |
| 21 | +- Full paths of source file(s) related to the vulnerability |
| 22 | +- The location of the affected code (tag/branch/commit or direct URL) |
| 23 | +- Step-by-step instructions to reproduce the issue |
| 24 | +- Proof-of-concept or exploit code (if possible) |
| 25 | +- Impact of the vulnerability, including how an attacker might exploit it |
| 26 | + |
| 27 | +We will acknowledge receipt of your report within 48 hours and provide a more detailed response within 7 days indicating the next steps in handling your report. |
| 28 | + |
| 29 | +## Security Update Process |
| 30 | + |
| 31 | +1. **Report Received**: We acknowledge receipt within 48 hours |
| 32 | +2. **Investigation**: We investigate and verify the vulnerability |
| 33 | +3. **Fix Development**: We develop a fix in a private branch |
| 34 | +4. **Testing**: We thoroughly test the fix |
| 35 | +5. **Release**: We release a security update |
| 36 | +6. **Disclosure**: We publicly disclose the vulnerability (after users have had time to update) |
| 37 | + |
| 38 | +## Security Best Practices |
| 39 | + |
| 40 | +When using OCPI Python in production: |
| 41 | + |
| 42 | +- Always use the latest stable version |
| 43 | +- Keep your dependencies up to date |
| 44 | +- Use HTTPS for all OCPI communications |
| 45 | +- Implement proper authentication and authorization |
| 46 | +- Validate and sanitize all inputs |
| 47 | +- Use environment variables for sensitive configuration |
| 48 | +- Regularly review and rotate API tokens and credentials |
| 49 | +- Monitor your application logs for suspicious activity |
| 50 | + |
| 51 | +## Security Considerations |
| 52 | + |
| 53 | +- **Authentication**: Ensure proper token validation and authorization checks |
| 54 | +- **Data Validation**: All OCPI data should be validated using Pydantic schemas |
| 55 | +- **Rate Limiting**: Consider implementing rate limiting for production deployments |
| 56 | +- **Error Handling**: Avoid exposing sensitive information in error messages |
| 57 | +- **Dependencies**: Keep all dependencies up to date to avoid known vulnerabilities |
| 58 | + |
| 59 | +Thank you for helping keep OCPI Python and its users safe! |
0 commit comments