java 板


LINE

※ 引述《pepsicola (空白待续)》之铭言: : 我是看这个link的http://0rz.tw/e12XN : 我照前面五步做完 结果失败 : 所以我误以为要完成後面ray要做的那几步才能写档案 : 结果就是我完全搞错方向 : 我在code里写了一个public的method让xsl去直接呼叫他 : 用这个方式来直接把applet里面的资料写到硬碟 : 之前是照里面开Allpermission : 如果是这种状况的话 有办法解决吗 : 还是我这种写法根本上就是有问题的? 让我们把问题一层一层仔细说吧,知道原因也就不会只能看着教学文件一步一 步做,出了问题也没办法找。只谈观念,实际步骤还是照着(ptt)做就是了 。 Browser 中的 applet 其实就是 Browser 把 class(jar) download 下来後,再 启动 java 去执行 download 下来的程式,但因为从网路上 download 程式码来 执行是很危险的事,所以 java 一开始就把这一部分的安全设计得很严密。java 在执行时有两种模式,一种是有启动 Secuirty Manager,另一种是没有启动 SecuirtyManager 的,一般写程式在自己电脑上执行是没有启动 SecuirtyManager 的,这个情况下不论程式写什麽,java 都会照着执行 (像是把自拍照传给别人 之类的),因为程式是你写的,不需要还让你绑手绑脚的,但其实如果你怕一时手 滑把自拍照传出去,或是你用到其他人写的 library 而你并不信任他,那其实 还是可以把 security manager 给打开(加上 vm 参数 -Djava.security.manager) ,你就会发现你就像被关在 applet 里一样失去办事的能力了。所以到这里你就 可以了解 applet 会有这麽多限制并不是因为他是 applet,而是因为 Browser 在执行他的时候是开着 security manager 的。 至於打开 "SM" 的情况下你到底能做什麽? java 大发慈悲让你可以使用 cpu,可 以配置记忆体,可以读一些和 java 有关的环境变数,如果是 applet 的话画画 图,连回 server 抓资料,大概就这些了,详细情况去 trace 一下 jre 的 source code,当你发现在做某些动作时他有去问一下 SecurityManager 老大时, 那大概你就不能做了。虽然说 SecurityManager 是老大,但他终究还是听你的话, SecurityManager 是根据 <jre>\lib\security\java.policy 里的设定来做限制的 。至於怎麽修改,就参考(ptt)那篇很乱的 Z-5-2-8 吧。有慧根的好奇宝宝 或许会问,如果在 "SM" 时不能读写档案,那 jre 怎麽去 load 档案系统中的 jar 档呢?答案是 "SM" 是看人欺负的,jre 本身和 "SM" 是一伙的当然不会被限制, 而放在 <jre>\lib\ext 里的程式也都是和 SM 同伙的,而你写的程式就会被欺负了。 所以你可以把你的程式也放到 <jre>\lib\ext 里,这样你也可以和 "SM" 做好朋友。 以上就是 java security 最基本的架构。好奇宝宝或许又要问,为什麽要弄得这 麽复杂呢?其实就是 java 从一出身就背负着光复网路执行环境的大任,所以必需 非常重视安全性这一块。除了像是 applet 这种情况外,像是 application server 也常会把 "SM" 打开,不然我写一个 servlet 把所有其他人的 service 全搞烂这 还得了。 接下来再谈一下 Browser 上 run applet 的问题。我说既然因为有 "SM" 的关系而 失去办事的能力,那为什麽把 code sign 一下就又可以了?原因是因为要每个使用 者都去和 "SM" 谈一下太麻烦了,所以 java 在 browser 的 plug-in 执行 applet 而想办事被拒绝後,会看一下要执行的这个 code 有没有被 sign 过,如果有 sign 过,就问一下真正的老大是不是要让这个家伙办事,也把要办事的这个人显示给你 看(也就是那个 pupop 视窗了)。为什麽有这个行为呢?是因为 code 被 sign 过表 示确定是个有名有姓的人产生这个程式,而且做出来後没有被别人篡改过,这样 这个程式还算有被信任的资格,至於到要底不要让他办事还是要问你才行。而去 sign code 的那把 key 也是有所差别,遇到一把随便做出来的 key,SM 在问你时 口气会不太好,如果是个比较有来头的堂口所用的 key 的话,SM 在问你时口气会 比较好一点,但不管怎麽有来头的堂口,一定还是要问过你才能办事的。所以让大 家知道,"SM"的存在是善意的,让大家不会随便就把别人肚子搞大…,啊不是,是 要建立一个安全的执行环境。 不知道这样会不会比较好懂一点?再怎麽说也不会比书上清楚,大家看书吧:) --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.127.126.95
1F:推 moonjuice:好详细喔~~ 09/21 21:20







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP