Syncfusion FileManager 安全下载

Syncfusion FileManager secure download

我正在使用 Syncfusion FileManager 组件创建一个 webassembly 应用程序。我已经使用控制器中的 [Authorize] 属性使用 FileManager 确保 API 上传安全,并将 FileManager 组件使用的 httpclient 的授权 header 设置为 header 的授权我在整个应用程序中使用的 httpClient。

FileManager 的下载功能不允许这样做(根据 Syncfusion 支持)。

最后,我的问题是:如何确保下载 api 端点的安全?我真的需要保护它吗?难道不需要有人知道我正在使用 FileManager 组件,如何构建一个 object 以发送到下载 api 端点并且知道文件名和目录结构是什么?

我最终要求用户在下载前输入用户名和密码。我将 loginModel 传递给控制器​​并使用 signInManager 来验证密码(这并不比处理登录更不安全)。如果账号是好的,则返回内容;否则,将显示“未经授权”的消息。

根据文件管理器组件的当前实现,HttpClient 实例仅在读取和上传操作中发送,因为我们仅使用 Http 请求处理了那些文件操作。您可以使用 OnSend 事件为读取和上传操作设置 HttpClientInstance。

文件管理器的下载操作是使用表单提交处理的。我们不使用Http请求来处理,所以这里不能传递HttpClientInstance。但是,您可以将自定义值从客户端发送到服务器以进行下载操作。您可以通过在 BeforeDownload 事件中将 args.Cancel 设置为 true 来阻止我们的默认下载操作。然后您可以使用互操作调用触发自定义下载操作,您可以在其中将自定义值传递到服务器端。

检查下面的论坛以在下载操作中传递自定义值

https://www.syncfusion.com/forums/169552/how-to-use-httpclient-for-file-manager