1、建立applet的class文件,在Html中包含進(jìn)去。
2、使用keytool-genkey建立一個(gè)self-signed簽名。
3、使用keytool-certreq以此簽名生成一個(gè)CSR(CertifiateSigningRequest)??(可選)
4、將此CSR遞交CA等機(jī)構(gòu)認(rèn)證,返回一個(gè).cer文件。??(可選)
5、將此.cer文件導(dǎo)入本地keystore(使用keytool-import)。??(可選)
6、使用jar將要發(fā)布的applet打包,并且在html中包含此包文件(archieve=XXX.jar)。
7、使用jarsigner和剛才導(dǎo)入keystore的key簽名此包。
另:要求客戶端必須安裝java-plugin1.1以上的版本。
此方法為javasecurity1.1的安全方式,簽名認(rèn)證后,applet可以完全訪問本地資源。
假如使用javasecurity1.2方式,則可以配置本地資源訪問權(quán)限,但是首先要從keystore導(dǎo)出.cer文件,使用policytool制作java.policy文件,將兩者隨同applet一同發(fā)布,在客戶端安裝java.policy文件和.cer證書。具體細(xì)節(jié)參考javatuorial中javasecurity1.2。
步驟一:(打包c(diǎn)lass文件)
在命令行中執(zhí)行以下的語句:jar-cvfMyApplet.jarclass
步驟二:(在網(wǎng)頁中嵌入Applet)
這個(gè)網(wǎng)頁的名字叫做FileReaderApplet.html,下面是嵌入Applet部分的寫法:
<APPLET
CODEBASE="."
CODE="jcomponent.FileReaderApplet.class"
ARCHIVE="MyClass.jar"
NAME="TestApplet"
WIDTH=400
HEIGHT=300
HSPACE=0
VSPACE=0
ALIGN=middle
>
</APPLET>
完成這個(gè)步驟后,這個(gè)Applet已經(jīng)可以顯示了。但是還不能讀寫本地的文件系統(tǒng)。
步驟三:(生成證書及簽名)
請?jiān)诿钚协h(huán)境下執(zhí)行以下的命令:
1、keytool-genkey-keystorepepper.store-aliaspepper
這個(gè)命令用來產(chǎn)生一個(gè)密匙庫,執(zhí)行完畢后應(yīng)該在c:/admin中產(chǎn)生一個(gè)pepper.store的文件,這里的pepper是我自己的名字,你可以對它進(jìn)行修改。另外在執(zhí)行命令的時(shí)候還有提示你輸入密匙庫的密碼,這里你一定要記住,否則后面要用的時(shí)候無法輸入。
2、keytool-eXPort-keystorepepper.store-aliaspepper-filepepper.cert
這個(gè)命令用來產(chǎn)生簽名時(shí)所要用的證書,同樣這里的pepper也可以換成你自己需要的名字。這個(gè)命令執(zhí)行完后在c:/admin中產(chǎn)生一個(gè)pepper.cert的文件。
4、jarsigner-keystorepepper.storeMyApplet.jarpepper
這個(gè)命令用上面產(chǎn)生的證書將我們的jar文件進(jìn)行了簽名。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注