我正在创建一个使用同步FileManager组件的组件应用程序。我已经保护了使用FileManager在控制器中使用授权属性上传的API,并将FileManager组件使用的httpclient的授权头设置为我在整个应用程序中使用的httpClient的授权头。
FileManager的下载功能不允许这样做(根据同步支持)。
最后,我的问题是:如何确保下载api端点的安全?我真的需要保护它吗?难道没有人知道我正在使用FileManager组件,如何构造一个对象来发送到下载api端点,并知道文件名和目录结构是什么?
发布于 2022-04-15 18:22:34
最后我要求用户在下载之前输入他们的用户名和密码。我将loginModel传递给控制器,并使用signInManager来验证密码(这并不比处理登录更加不安全)。如果帐户良好,则返回内容;如果没有,则显示“未经授权”的消息。
发布于 2022-04-18 14:22:59
根据文件管理器组件的当前实现,HttpClient实例只在读取和上传操作中发送,因为我们只使用Http请求处理了这些文件操作。您可以使用OnSend事件为读取和上载操作设置HttpClientInstance。
文件管理器的下载操作是通过表单提交来处理的。我们不使用Http请求来处理它,因此不可能在这里传递HttpClientInstance。但是,您可以将自定义值从客户端发送到服务器以进行下载操作。通过在BeforeDownload事件中将args.Cancel设置为true,可以防止我们的默认下载操作。然后,可以使用互操作调用触发自定义的下载操作,在该调用中,可以将自定义值传递给服务器端。
在下载操作中检查下面的论坛以传递自定义值
https://www.syncfusion.com/forums/169552/how-to-use-httpclient-for-file-manager
https://stackoverflow.com/questions/71860292
复制相似问题