我正在设计一个服务器端 Webservice DLL,其他公司的开发人员可以访问该 DLL,以访问中央服务器上的数据。 我需要考虑的问题是 - 确保他们只看到允许他们看到的数据 - 允许他们上传/下载文件。同样,只有他们被允许的。
我可以设计一个 sql 查询,其中包含他们能够看到的数据,但我需要确保他们无法编辑查询来访问其他数据。此外,我还需要确保上传、下载功能足够安全,以至于他们无法下载其他人的文件。将我不希望它们看到的函数过程和对象放在私有(private)声明中是否足够,或者我需要做更多的事情来控制访问。
我还在考虑通过密码控制来控制网络服务。在网络服务中执行此操作的最佳方法是什么。
最佳答案
在网络服务中,您可以完全控制向外界公开的功能。安全性必须由您自己实现。因此,如果用户请求下载文件,您必须进行检查,并根据用户的权限决定是否可以。
使用带有参数的查询来确保没有人可以弄乱您的 SQL 代码。查询属性不应通过服务公开,也没有必要这样做。
-- 编辑:
我忘了问:您正在考虑 SOAP 服务还是 WebSnap?
关于web-services - 确保 Delphi 中 Web 服务中的功能是安全的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1913529/