What is the security model here? I see the word "secure", but no discussion of threat models or what this security provides. If there's a key that can create users and arbitrary records, and the key is stored in plaintext in your browser code, what's to keep an enterprising user from using your FaunaDB instance as their own data store if they copy-paste the key into their own scripts? Does FaunaDB protect against a r…
You are correct that a script could create new users at machine speed. Rate limiting is typically done outside of the app server stack, but the FaunaDB dynamic schedule, QoS, and quota system have the potentially to mitigate this kind of attack. For instance, as we add support for per-key quotas etc, the publicly exposed key can be provisioned with the limits you describe. The use case we're illustrating here is supp…
You shouldn't promote a practice or technique as "secure", but then when asked about security, tell me that the sensible thing to do is to implement security myself.
You should discuss the limitations of your actor-based security model frankly in your documentation and promotional tutorials. Even more so because you plan more security features like "key-based quotas", indicating y'all are well aware of these limitations, and foresee the need for more mitigations!
As it is, I think FaunaDB is an interesting product, but because of the approach to security related messaging, I view the whole system with distrust. What other "lies of omission" would I find if I actually started using this product?