日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

我該如何寫這個策略文件????高手幫忙,再線等待,立即送分?。?! Java / J2SE / 基礎(chǔ)類

 ShangShujie 2007-07-22

    我寫了一個applet訪問遠程數(shù)據(jù)庫的程序!通過odbc-jdbc橋的形式!我該如何寫這個策略文件才能讓用戶有權(quán)限!    
  

要啟動   Policy   Tool,僅僅需要在命令行中鍵入以下命令。  
  policytool  
  這將調(diào)出“Policy   Tool”窗口。無論何時啟動   Policy   Tool,Policy   Tool   都將試圖用來自有時稱為“用戶策略文件”的策略信息來填寫本窗口。在缺省情況下,用戶策略文件是宿主目錄下名為   .java.policy   的文件。如果   Policy   Tool   沒能查找到用戶策略文件,則它將報告該情況并且顯示空白的“Policy   Tool”窗口(即有標(biāo)題和按鈕但是其中沒有數(shù)據(jù)的窗口)  
  然后,您可以繼續(xù)打開您想要使用的任何策略文件或者創(chuàng)建新策略文件,方法是添加策略項(同時還可指定密鑰倉庫)和保存文件。第一次運行Policy   Tool時,將不會有用戶策略文件(除非已經(jīng)手動創(chuàng)建了一個用戶策略文件)。  
  創(chuàng)建新的策略文件  
  要創(chuàng)建新的策略文件,請選擇   File   菜單中的   New   命令即可。該操作將關(guān)閉當(dāng)前打開的策略文件(如果有,必要時會在關(guān)閉之前首先提示您保存該文件)并且調(diào)出新的Policy   Tool窗口,即有標(biāo)題和按鈕但是其中沒有數(shù)據(jù)的窗口。  
  指定密鑰倉庫  
  要為策略項的   SignedBy   部分中所指定的別名指定包含密鑰信息的密鑰倉庫,請選擇   Edit   菜單下的   Change   Keystore   命令。  
  這將調(diào)出一個對話框,在對話框中可以指定新的密鑰倉庫   URL,也可指定密鑰倉庫類型。  
  例如,要在   D:   \Tests   目錄中指定名為   "mykeystore"   的密鑰倉庫,須將下列   file:   URL   鍵入標(biāo)簽為   "New   KeyStore   URL"   的文本框。  
    file:/D:/Tests/mykeystore  
  要將密鑰倉庫類型指定為“JKS”(Sun   Microsystems   所支持的專用密鑰倉庫類型),請在標(biāo)簽為“New   KeyStore   Type”的文本框中鍵入以下內(nèi)容。  
  JKS  
  注意:“New   KeyStore   URL”值是   URL,因此總是用斜杠(決不能用反斜杠)作為目錄分隔符,即使密鑰倉庫實際上是在   Windows   系統(tǒng)上。  
  當(dāng)完成指定密鑰倉庫   URL   和類型(如果有)時,請選擇   OK(或者也可以選擇   Cancel   來取消操作)。如果沒有取消,則標(biāo)簽為“Keystore:”   的文本框中現(xiàn)在就填上了密鑰倉庫   URL   和類型。  
  添加新策略項  
  要添加新的策略項,請選擇主“Policy   Tool”窗口中的   Add   Policy   Entry   按鈕。  
  這將調(diào)出“策略項”對話框:  
     
  利用該對話框,您可以指定    
  ·可選的   CodeBase   項,指明代碼所始發(fā)自的   URL   位置。例如,要指明代碼是來自于   D:   驅(qū)動器上的本地   JavaSoft\TESTS\   目錄,請將以下文件   URL   鍵入到標(biāo)簽為   CodeBase   的文本框中:       file:/D:/JavaSoft/TESTS/  
  ·可選的   SignedBy   項,指明來自密鑰倉庫的別名,作用是引用其私鑰用于對代碼進行簽名的簽名人。例如,要指明“kaven”別名,只需在標(biāo)簽為   SignedBy   的文本框中鍵入以下內(nèi)容:       kaven  
  ·一個或多個權(quán)限項,指明將何種權(quán)限授予來自   CodeBase   和   SignedBy   值所指示的代碼源的代碼(或者如果沒有指定這樣的值,則指明將何種權(quán)限授予其它任何代碼)。請參閱添加新權(quán)限。    
  SignedBy   值是字符串別名,它被映射到(使用密鑰倉庫)與簽名人相關(guān)聯(lián)的公鑰集。這些密鑰的作用是校驗來自指定代碼源的類是否確實由這些簽名人簽名。  
  SignedBy   值可以是逗號分隔的字符串,其中可以包含多個簽名人的名字,例如   “Adam,Eve,Charles”,這意味著“由   Adam   和   Eve   以及   Charles   簽名”(即,其關(guān)系是   AND,而不是   OR)。  
  SignedBy   值是可選的,這是因為:如果忽略該值,則表示“任何簽名人”,換句話說,對代碼是否進行簽名無關(guān)緊要。同樣,如果沒有   CodeBase   項,則表示“任何代碼”;代碼始發(fā)自何處無關(guān)緊要。  
  因此,如果沒有   CodeBase   項,則所有由指定別名簽名的代碼將被授予指定的權(quán)限。如果沒有   SignedBy   項,則所有來自指定的   CodeBase   的代碼都將被授予指定的權(quán)限,而不管代碼是否已經(jīng)被簽名,以及由誰簽名。如果沒有   CodeBase   項,也沒有   SignedBy   項,則所有代碼將被授予指定的權(quán)限。  
  添加新權(quán)限  
  要添加新權(quán)限,請選擇“Policy   Entry”對話框中的   Add   Permission   按鈕。這將調(diào)出“Permissions”對話框:  
     
  添加權(quán)限:    
  鍵入或選擇權(quán)限類型。    
  “Permission:”下拉列表中包含了內(nèi)置權(quán)限類型的列表。如果您想要其中某種類型,則請從列表中選擇,隨后完整的權(quán)限類型名將出現(xiàn)在下拉列表右邊的文本框中。  
  如果您想要指定由您本人或其他人所定義的權(quán)限類型,請在文本框中鍵入該權(quán)限類型。  
  入或選擇權(quán)限目標(biāo)名。    
  如果您從“Permission:”下拉列表中選擇了一種內(nèi)置權(quán)限,而且該類型的權(quán)限具有特定的目標(biāo)名值,則“Target   Name:”下拉列表將包含這些值的列表,您可以從中進行選擇。  
  在某些情況下,目標(biāo)名的可能取值范圍極大但是某些內(nèi)置目標(biāo)名規(guī)范又具有特殊的含義,這樣的目標(biāo)名將出現(xiàn)在下拉列表中。例如,“<<All   Files>>”特殊目標(biāo)名將出現(xiàn)在“File   Permission”列表中。  
  要指定下拉列表中沒有的目標(biāo)名,請在“Target   Name:”下拉列表右邊的文本框中直接鍵入目標(biāo)名。例如,要指定   D:\JavaSoft\ptTest\   目錄中名為   data   的文件,請鍵入    
      D:\JavaSoft\ptTest\data  
  3.鍵入或選擇一個或多個動作(如果動作相關(guān))。    
  某些權(quán)限只有目標(biāo)名,但是沒有動作。對于這樣的權(quán)限,保持“Action:”下拉列表右邊的文本框為空(對于該類型的內(nèi)置權(quán)限,它將自動變灰,表示不可用)。  
  對于需要指定動作的權(quán)限,請在文本框中鍵入逗號分隔的動作列表,或者從下拉列表中選擇動作。例如,要指定對“File   Permission”指定的文件的讀寫訪問權(quán)限,請首先從列表中選擇   read   (或   write,其先后順序無關(guān)緊要)。單詞“read”將出現(xiàn)在文本框中。然后選擇   write,將附加上單詞“write”,兩單詞之間用逗號和空格隔開。  
  如有必要,請在“Signed   By”標(biāo)簽右邊的文本框中鍵入   SignedBy   別名。權(quán)限項的   SignedBy   值是可選的。如果存在   SignedBy   值,則表明是已簽名的權(quán)限。這就是說,為了授予權(quán)限,權(quán)限類自身必須由給定別名簽名。    
  完成權(quán)限信息的指定后,請選擇   OK   按鈕(或   Cancel   按鈕來取消操作)。新權(quán)限就出現(xiàn)在“Policy   Entry”對話框的某行中。  
  然后,可以依照同樣的步驟添加另外的權(quán)限。或者也可以編輯現(xiàn)有的權(quán)限或刪除權(quán)限。  
  編輯權(quán)限  
  要編輯現(xiàn)有權(quán)限,請選擇“Policy   Entry”對話框中該權(quán)限所在的行,然后選擇   Edit   Permission   按鈕。另外,也可以簡單地雙擊該權(quán)限所在的行。  
  這將調(diào)出與添加新權(quán)限時所出現(xiàn)的對話框一樣類型的“Permission”對話框,唯一的區(qū)別在于此處的對話框中已填寫了現(xiàn)有權(quán)限信息。要更改該信息,請從下拉列表中重新進行選擇或替換文本框中的信息。  
  完成操作之后,請選擇   OK   按鈕(或   Cancel   按鈕以取消所作更改)?!癙olicy   Entry”對話框?qū)@示修改后的權(quán)限。  
  在完成添加策略項之后,請選擇“Policy   Entry”對話框中的   Done   按鈕,或   Cancel   按鈕以取消操作。  
  如果選擇了   Done,則“Policy   Tool”窗口中現(xiàn)在就包含了代表該策略項的行。該行只是包含   CodeBase   和   SignedBy   信息(如果有)。如果在“Policy   Entry”對話框中沒有指定   CodeBase   和   SignedBy   ,則只是出現(xiàn)    
    CodeBase   <ALL>。  
  編輯策略項  
  要編輯現(xiàn)有策略項,請在主“Policy   Tool”窗口中選擇該項所在的行,然后選擇   Edit   Policy   Entry   按鈕。另外,也可以簡單地雙擊該項所在的行。  
  這將調(diào)出與添加新策略項時所出現(xiàn)的對話框一樣類型的“Policy   Entry”對話框,唯一的區(qū)別在于此處的對話框中已填寫了現(xiàn)有策略項的信息。要更改該信息,只需重新鍵入信息(CodeBase   和   SignedBy   值)或添加、刪除或修改權(quán)限。  
  完成之后,請選擇   Done   按鈕(或   Cancel   按鈕以取消操作)。  

http://www.yesky.com/20010919/197664_3.shtml  
  這是一個applet   訪問文件的例子。訪問數(shù)據(jù)庫只是權(quán)限改為:  
  java.net.SocketPermission  
   
  我覺得樓上說的有點麻煩。不過也很好。我通過那個例子試驗了訪問文件和數(shù)據(jù)庫都行。希望對你有幫助。有什么問題我們再討論

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多