gpt4 book ai didi

Java Applet 沙盒安全性,本地访问与外部访问

转载 作者:行者123 更新时间:2023-11-30 18:47:53 25 4
gpt4 key购买 nike

我在我们的(代码签名的)java 小程序中有一个错误“访问被拒绝(java.net.SocketPermission x.x.x.x:443 connect_resolve”。我们有一个 html“保存”按钮调用(通过 javascript)一个小程序方法来保存一个文件,加载到小程序,到网络服务器上。经过一些广泛的谷歌研究,我通过将小程序的保存方法代码包装在 doPrivileged() 中来修复它。错误似乎已修复,人们很高兴。

我想确认我完全理解原始情况和我应用的解决方案(向后,我知道,但周转时间不允许我真正研究这个问题)。

让我特别困惑的是,我们在内部网络的测试服务器上广泛测试了我们的小程序,直到我们尝试从我们网络外部的客户端机器上使用 javascript“保存”按钮时才出现此错误。所以在这一点上,我只是做了一个有根据的猜测:这就是 java applet 沙箱机制的工作原理。

这是真的吗?只要客户端小程序从同一域网络内的客户端计算机访问 Web 服务器资源,它就被视为在沙箱墙内吗?如果客户端计算机在 Web 服务器的本地网络外部,则 applet 请求被认为在沙箱墙之外并且需要 doPrivileged?还是这里还有我遗漏的另一种解释?

我无法在 sun 的文档中或通过 google 找到任何具体证明或反驳我的断言的内容。非常感谢在 Java 小程序方面有更多经验的人的澄清

最佳答案

As long as the client applet is accessing web server resources from a client machine that is within the same domain network it is considered within the sandbox walls?

如果那样的话,您的意思是沙盒小程序可以“回拨”到它自己的服务器,那么是的。

And if the client machine is external to the web-server's local network the applet request is considered outside of the sandbox walls and needs the doPrivileged?

小程序需要信任(数字签名+最终用户接受)才能从其他服务器访问资源。使它进一步复杂化的是 JavaScript。 JRE 突然要考虑一个“不受信任”的元素。通过将代码包装在 doPrivileged() 方法中,我们向 JRE 表明该代码是可信的,即使它被 JS 等其他东西调用也是如此。

关于Java Applet 沙盒安全性,本地访问与外部访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4856424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com