[問題] java.security的使用方式

看板java作者 (LaPass)時間10年前 (2015/05/18 23:34), 編輯推噓3(3019)
留言22則, 6人參與, 最新討論串1/1
我想做到 讓使用者可以自寫程式(JAVA) 然後上傳到SERVER上 再讓我的SERVER去執行他傳來的程式 我再去取得結果 我現在在想的是 在JAVA中要如何鎖掉一些package的功能 例如當他的程式去呼叫 File 、 Socket或是Thread就跳錯 我找到一個可能的方向 java.security 底下的東西應該就是我要找的 但是我找不到範例 請問這種功能有範例可以看嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.38.73.184 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1431963282.A.31B.html

05/18 23:49, , 1F
leetcode
05/18 23:49, 1F

05/19 00:25, , 2F
05/19 00:25, 2F

05/19 01:10, , 3F
該不會要做judge server吧
05/19 01:10, 3F

05/19 02:26, , 4F
這不難阿,你抽掉本機端的rt.jar裡面你不要的東西
05/19 02:26, 4F

05/19 02:27, , 5F
換成同樣函數,會丟exception就好...
05/19 02:27, 5F

05/19 02:27, , 6F
不過有些能抽,有些是不能抽的,要一個個試試看
05/19 02:27, 6F

05/19 02:28, , 7F
只要你跑的VM rt.jar裡面被「加料」過,這就可以達到你
05/19 02:28, 7F

05/19 02:28, , 8F
要的效果了,而且在對方local端不會感到異狀 :D
05/19 02:28, 8F

05/19 02:29, , 9F
誒,不過看了一下security應該簡單點我想...
05/19 02:29, 9F

05/19 08:34, , 10F
感謝,我來研究一下
05/19 08:34, 10F

05/19 08:39, , 11F
耶,要用新的JVM起來喔? 這樣有點麻煩,因為我需要他們的
05/19 08:39, 11F

05/19 08:39, , 12F
程式執行出來的結果...>
05/19 08:39, 12F

05/19 12:11, , 13F
起新的VM來跑也可以拿結果啊@@
05/19 12:11, 13F

05/19 13:23, , 14F
可以動態抽換rt.jar 這個是沒問題的
05/19 13:23, 14F

05/19 13:23, , 15F
最大的問題是,有些能抽掉有些不能,要試試看
05/19 13:23, 15F

05/19 13:24, , 16F
不能抽掉的主要都是因為會被其他「必跑」的class參考
05/19 13:24, 16F

05/19 15:18, , 17F
抽換掉Thread的classloader不知道有沒有用....
05/19 15:18, 17F

05/19 16:44, , 18F
要從classloader下手的話 不用抽掉 動態換掉即可
05/19 16:44, 18F

05/19 16:45, , 19F
看看Thread.currentThread.setContextClassLoader(...)
05/19 16:45, 19F

05/19 16:45, , 20F
這個是不是你要的。
05/19 16:45, 20F

05/19 16:45, , 21F
繼承classloader在魔改一下就好...
05/19 16:45, 21F

05/19 16:45, , 22F
誒,仔細看了一下,你應該想用的方法跟我說的是一樣的
05/19 16:45, 22F
文章代碼(AID): #1LMWQICR (java)
文章代碼(AID): #1LMWQICR (java)