Json 使用web服务实现两个系统之间的安全集成

Json 使用web服务实现两个系统之间的安全集成,json,web-services,api,security,Json,Web Services,Api,Security,我有两个应用程序,一个是业务流程管理(BPM),另一个是文档管理系统(DMS),这两个系统都公开web服务以实现与其他系统的集成。这两个系统都提供主登录用户名和密码,以提供JSON API身份验证。例如,在BPM内启动流程(“流程1”);DMS可以发送以下API调用 /jw/web/json/workflow/process/start/process1?master_username=BPMadmin&master_password=982716171717&loginAS=c

我有两个应用程序,一个是业务流程管理(BPM),另一个是文档管理系统(DMS),这两个系统都公开web服务以实现与其他系统的集成。这两个系统都提供主登录用户名和密码,以提供JSON API身份验证。例如,在BPM内启动流程(“流程1”);DMS可以发送以下API调用

/jw/web/json/workflow/process/start/process1?master_username=BPMadmin&master_password=982716171717&loginAS=currentusername
这同样适用于调用DMS web服务

这种安全方法的限制是,我无法使用JavaScript调用任何DMS或BPM web服务,也无法使用JavaScript使用返回的JSON,因为如果我遵循javaScript方法,我将向最终用户公开master_用户名和master_密码,他们可以手动将LoginAs参数修改为其他用户名,并执行他们无权执行的操作

因此,我的问题是:-

  • 我可以使用JavaScript使web服务调用安全吗

  • 第二个问题,我还可以遵循哪些其他安全方法来使用javaScript确保web服务调用的安全?请记住,我可以将Web服务安全性修改为其他方法,而不是使用主登录用户名和密码,但这可能需要我方更多的时间和精力

  • 提前谢谢你的帮助
    致以最诚挚的问候

    首先,JS是客户端,不包括任何特殊的安全/魔法/不可逆功能,如浏览器辅助加密引擎、用于生成密钥的高速SPRN等。长话短说,你用js做的任何事情都是不安全的,它可以被混淆,但它将是不安全的。这就是你已经提出的观点。另一种方法是将服务器用作“代理”。假设您正在设计一个JS辅助gui并显示一些文档,然后您向您的应用程序服务器(不是BPM或DMS)发出AJAX请求,它充当代理,对DMS进行身份验证并调用WS,然后将结果返回给您的JS:),这样您的设置看起来就像JS(会话)->app(WS-auth)->DMS->app(sesion)->JS(我假设您已经验证了用户身份,我们将使用用户会话作为JS服务器安全通道,如果没有,您将不得不合并一些其他JS身份验证机制,可能是一次性的,但这将很容易,因为它是您的系统)。瞧。唯一的安全考虑是不允许任何人调用您的服务器代理站点:)