Kategorie szkoleń | Egzaminy | Kontakt

Odpowiedź (1)

  • 0

Witam,

 nie jestem pewien czy zrozumiałem Pańskie pytanie, opiszę jak działa w Javie mechanizm wykonywania kodu.
Wirtualna maszyna może zostać uruchomiona z tzw. SecurityManagerem.
W kodzie jest on osiągalny przy pomocy wywołania System.getSecurityManager().
Niektóre metody standardowych bibliotek Javy sprawdzają czy mogą się wykonać. Należą do nich:

- Runtime.exit()

- File.canWrite()

oraz wiele innych. To czy operacja jest dozwolona wynika z aktualnie używanego przez JVM pliku *.policy.
Można przyznawać uprawnienia dla określonego kodu, np.

grant codeBase "file:/d:/altkom.jar" { permission java.security.AllPermission; };

ale dotyczy to tylko zezwoleń, które są jawnie sprawdzane w kodzie.
Podsumowując: jeśli kod aplikacji będzie napisany tak że np. na początku każdej metody nastąpi sprawdzenie przy pomocy SecurityManagera czy operacja (kod) ma być wykonany to Pańskie wymaganie będzie spełnione.

  • Odpowiedział
  • @ | 20.08.2015
  • TRENER ALTKOM AKADEMII