Open dokterbob opened 1 week ago
There's currently E2E test failures in:
chat_profiles
data_layer
header_auth
password_auth
This is kind of to be expected, given the scale of this refactor.
In addition, we need to make sure that files are served from a place which does not have API access, e.g. the files should really be untrusted. Otherwise, an LLM or whoever uploads files could call the Chainlit API on the user's behalf by crafting malicious HTML with JS.
To get there, we need to:
/api/
./files/
.path=/api/
, allowing acces to the API only. Including file uploads.path=/files/
, allowing only GET (and perhaps HEAD) to files.This would be a good moment to 'go all in' in terms of file security. We could also postpone this to a later PR and/or explicitly document that files in their current implementation should not come from untrusted sources (e.g. AI-generated or from 3rd parties).
Implementation of #1520