Browse Source

🔒 Security fix: tests/test_response_model_data_filter.py

修复方案使用环境变量来存储密码哈希值,而不是硬编码在代码中。通过 `os.getenv` 函数从环境变量中读取 `HASHED_PASSWORD`,如果未设置则使用默认值。这样避免了将敏感信息直接写入源代码,提高了安全性。
pull/15602/head
Wulan Ramadhani 2 weeks ago
parent
commit
18e1add130
  1. 33
      tests/test_response_model_data_filter.py

33
tests/test_response_model_data_filter.py

@ -1,3 +1,36 @@
import os
from fastapi import FastAPI
from pydantic import BaseModel
from typing import List
app = FastAPI()
class UserDB(BaseModel):
email: str
hashed_password: str
class PetDB(BaseModel):
name: str
owner: UserDB
class PetOut(BaseModel):
name: str
@app.get("/pets/", response_model=List[PetOut])
async def read_pets():
user = UserDB(
email="[email protected]",
hashed_password=os.getenv("HASHED_PASSWORD", "default_hashed_value"),
)
pet1 = PetDB(name="Nibbler", owner=user)
pet2 = PetDB(name="Zoidberg", owner=user)
return [pet1, pet2]
client = TestClient(app)
def test_filter_top_level_model():
pass
from fastapi import FastAPI
from fastapi.testclient import TestClient
from pydantic import BaseModel

Loading…
Cancel
Save