如何安全地接受用户输入以在我的 Flutter 应用程序中构建另一个字符串?

问题描述 投票:0回答:2

我需要安全地准备一个使用用户输入的字符串。我正在使用一个名为 sql_conn 的 flutter 包与 SQL 数据库进行通信。这是一个临时解决方案,直到我们构建一个 Web 服务器来接收所有呼叫为止。

这是如何发送 SQL 请求的示例:

var connectionAllowedResult = await SqlConn.readData("declare @Allowed bit declare @Status nvarchar(4000) exec spHandheldConnectionAllowed '$username', '$ipAddress', '$dbName', @Allowed output, @Status output");

我如何安全地准备这个,以便用户不能恶意插入自己的 SQL 语句?

flutter dart sqlconnection
2个回答
0
投票

直接在前端应用程序中编写与 SQL 相关的函数并不是一个好主意,我更喜欢使用单独的后端服务(如 Django 或 Flask)来处理后端查询,然后在 flutter 中使用 HTTP API 调用。


0
投票

pub.dev 上的验证链包可能会帮助你。有很多使用自定义函数来提供验证的很好的例子。

在用户输入字段时、sql 语句之前进行输入验证。

另一个建议是使用不允许不当输入的类型。不要将 IP 地址存储为字符串,而是将其存储为 4 个 int 的列表等。

© www.soinside.com 2019 - 2024. All rights reserved.