1、建立applet的class文件,在Html中包含進去。
2、使用keytool-genkey建立一個self-signed簽名。
3、使用keytool-certreq以此簽名生成一個CSR(CertifiateSigningRequest)??(可選)
4、將此CSR遞交CA等機構認證,返回一個.cer文件。??(可選)
5、將此.cer文件導入本地keystore(使用keytool-import)。??(可選)
6、使用jar將要發布的applet打包,并且在html中包含此包文件(archieve=XXX.jar)。
7、使用jarsigner和剛才導入keystore的key簽名此包。
另:要求客戶端必須安裝java-plugin1.1以上的版本。
此方法為javasecurity1.1的安全方式,簽名認證后,applet可以完全訪問本地資源。
假如使用javasecurity1.2方式,則可以配置本地資源訪問權限,但是首先要從keystore導出.cer文件,使用policytool制作java.policy文件,將兩者隨同applet一同發布,在客戶端安裝java.policy文件和.cer證書。具體細節參考javatuorial中javasecurity1.2。
步驟一:(打包class文件)
在命令行中執行以下的語句:jar-cvfMyApplet.jarclass
步驟二:(在網頁中嵌入Applet)
這個網頁的名字叫做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>
完成這個步驟后,這個Applet已經可以顯示了。但是還不能讀寫本地的文件系統。
步驟三:(生成證書及簽名)
請在命令行環境下執行以下的命令:
1、keytool-genkey-keystorepepper.store-aliaspepper
這個命令用來產生一個密匙庫,執行完畢后應該在c:/admin中產生一個pepper.store的文件,這里的pepper是我自己的名字,你可以對它進行修改。另外在執行命令的時候還有提示你輸入密匙庫的密碼,這里你一定要記住,否則后面要用的時候無法輸入。
2、keytool-eXPort-keystorepepper.store-aliaspepper-filepepper.cert
這個命令用來產生簽名時所要用的證書,同樣這里的pepper也可以換成你自己需要的名字。這個命令執行完后在c:/admin中產生一個pepper.cert的文件。
4、jarsigner-keystorepepper.storeMyApplet.jarpepper
這個命令用上面產生的證書將我們的jar文件進行了簽名。
新聞熱點
疑難解答