Nenhuma descrição

tanlie 5d0119202f 数据库连接。 6 dias atrás
.github 1163b37a0b logger enhance 6 dias atrás
app 5d0119202f 数据库连接。 6 dias atrás
note 1904a24bfd 视图函数。 1 semana atrás
tests 026d79c122 AI优化。 6 dias atrás
.gitignore ed4e1707a1 修 Python 日志配置,为 FileHandler 添加一个自定义的 Formatter,专门过滤掉 ANSI 转义序列。 6 dias atrás
README.md 5d0119202f 数据库连接。 6 dias atrás
ginger.py 6ae20abe2f feat: improve Flask app structure and logging 6 dias atrás
requirements.txt 4d24e407c5 chore(secrets): use OS keyring for DB password and ignore .env 6 dias atrás

README.md

ginger

Small Flask project. This README explains how to store the MySQL password securely using the OS keyring and how to verify it.

Secure DB password with keyring

This project prefers reading MYSQL_PASSWORD from environment variables. If you don't want to store the password in .env, put it into the OS keyring (recommended for development machines).

Service name used: ginger_mysql

Examples:

  • macOS / Linux (python -c):

python -c "import keyring; keyring.set_password('ginger_mysql', 'root', '@@qinys12346..')"

  • Windows PowerShell:

python -c "import keyring; keyring.set_password('ginger_mysql', 'root', '@@qinys12346..')"

To verify the stored password:

python -c "import keyring; print(keyring.get_password('ginger_mysql', 'root'))"

Alternative: environment variable

You can also set MYSQL_PASSWORD in .env (not recommended to commit .env). The repository .gitignore already ignores .env files.

Test DB connection (dev only)

Start the app and POST to /db/test (only works when DEBUG or TESTING is true) to create tables and insert a test user.

Notes

  • On CI or servers prefer a proper secret manager (Vault, AWS Secrets Manager, etc.) and inject secrets as env vars.
  • Do NOT commit real passwords to the repository.