Wednesday, April 8, 2009

Simple Permission & Policy Example

Security manager diaktifkan dengan menambahkan parameter -Djava.security.manager saat run program java atau JAR dengan menggunakan policy default milik Java. Jika ingin menggunakan policy buatan sendiri, tambahkan parameter -Djava.security.policy=dir_file_policy/file_policy.policy saat run.

Berikut ini adalah contoh sederhana implementasi permission dan policy. Skenarionya adalah dengan membatasi akses terhadap sebuah file bernama "myFile.txt". Kode berikut adalah contoh aplikasinya :

public static void main(String[] args) {
File file = new File("myFile.txt");
try {
file.canWrite();
System.out.println("Can write file myFile.txt");
} catch(Exception e) {
System.out.println("Can not write file myFile.txt");
e.printStackTrace();
}
}

dan kode selanjutnya adalah isi file policy :

grant
{
permission java.io.FilePermission "myFile.txt", "write";
};

untuk melihat hasilnya gunakan parameter -Djava.security.manager -Djava.security.policy=dir_file_policy/security.policy saat run aplikasi. Program di atas akan menghasilkan output bahwa kita bisa menulisi file myFile.txt. Jika kita menghapus permission dengan meng-comment //permission java.io.FilePermission "myFile.txt", "write";, maka program akan menghasilkan output bahwa kita tidak bisa menulisi file tsb.

0 comments:

 

©2009 Stay the Same | by TNB