Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度2+;将外部组件加载到安全沙箱中的应用程序中_Javascript_Angular_Security - Fatal编程技术网

Javascript 角度2+;将外部组件加载到安全沙箱中的应用程序中

Javascript 角度2+;将外部组件加载到安全沙箱中的应用程序中,javascript,angular,security,Javascript,Angular,Security,我正在调查是否有一种“安全/合理的方式”将第三方组件加载到angular 2+应用程序中,以保护主机应用程序免受典型安全漏洞或由此打开的任何漏洞的影响。 阅读以下网页: (ng1)很快 似乎一旦外部代码被加载,就真的无法阻止它做任何它想做的事情 我不是专家,所以我可能问错了问题或看错了东西,所以情况如下: 有一个应用程序A,使用“市场”风格的设置,例如Play store或Apple的应用程序商店类型的东西 第三方可以提交实际上是ng2模块的应用程序B 应用程序A的服务器存储并托管应用程

我正在调查是否有一种“安全/合理的方式”将第三方组件加载到angular 2+应用程序中,以保护主机应用程序免受典型安全漏洞或由此打开的任何漏洞的影响。 阅读以下网页:

  • (ng1)很快 似乎一旦外部代码被加载,就真的无法阻止它做任何它想做的事情
我不是专家,所以我可能问错了问题或看错了东西,所以情况如下: 有一个应用程序A,使用“市场”风格的设置,例如Play store或Apple的应用程序商店类型的东西

  • 第三方可以提交实际上是ng2模块的应用程序B
  • 应用程序A的服务器存储并托管应用程序B的角度组件,即B无需加载任何外部文件
  • 应用程序A的用户可以选择“安装”应用程序B,然后应用程序A将为用户加载应用程序B(在应用程序B上进行某种手动审查)
  • 理想情况下,我一直在寻找的是一种锁定应用程序B的方法,这样它就不能将任意代码拉入应用程序a并可能将其隔离,这样它就只能访问角度API的子集/白名单集,并且只有来自应用程序a的指定API才能注入到B中

    有没有办法在angular 2+中实现这一点

    在确保应用程序A的持续完整性和保护用户方面,我是否在寻找正确的东西

    如果无法隔离应用程序B,我应该研究/考虑哪些安全方面? 这个想法目前还处于初级阶段,所以没有什么是一成不变的,但是需要一些方法来支持托管第三方代码


    (旁注:Stackoverflow认为这些问题似乎是主观的,我不明白为什么会这样,而不是否决投票,我会从评论中了解更多,说明为什么这是主观的。)

    只是一个方向,您正在寻找沙箱第三方js,如此问题:@elpddev,非常感谢。如果你把你的评论变成一个答案,我会接受的。从你的链接中,我已经快速评估了这里提供的选项,谷歌的Caja看起来是个不错的选择。我做了一个快速的angular 2应用程序,并且能够很好地加载它,假设它们的隔离机制工作正常,那么它非常适合做(将花费更多时间评估)我所想的事情。对于ref来说,这只是一个方向。如果感兴趣,还有其他几篇链接文章。Caja似乎有点不容易实现。