Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [java] file di policy e sicurezza

    ciao a tutti,

    potreste darmi qualche chiarimento relativamente ai file di policy? di carattere generale intendo.
    Soprattutto ho alcuni dubbi:
    1) in un'applicazione cliente server ho due file di policy.. uno per il server e uno per il client. Devono essere uguali? Forniscono permessi SOLO RELATIVAMENTE alla macchina su cui girano? Per dire il file del client può dare permessi su operazioni sul server?
    2) se do tutti i permessi quali rischi posso correre?

    grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java] file di policy e sicurezza

    Originariamente inviato da Epris
    1) in un'applicazione cliente server
    Ecco, iniziamo a precisare cosa intendi. Si tratta di applicazioni "standalone", cioè per intenderci una applicazione Java che ha come "entry point" il classico metodo main(String[]) ?

    Perché la questione è che le normali applicazioni Java standalone possono fare tutto quello che vogliono senza restrizioni, perché per default non è installato un "security manager".

    Se invece mi parli di "applet" (o altro di più particolare) ... è un altro discorso e le cose cambiano.

    Originariamente inviato da Epris
    Devono essere uguali?
    Teoricamente mica è detto .... dipende se e cosa bisogna permettere.

    Originariamente inviato da Epris
    Forniscono permessi SOLO RELATIVAMENTE alla macchina su cui girano?
    Il Security manager controlla certe azioni particolari che possono essere fatte dal codice. E alcune di queste azioni controllate riguardano chiaramente la macchina locale, es. accesso al file-system o lancio di processi.
    Quindi sì, centra la macchina locale ma la questione riguarda una certa istanza della JVM. Sulla stessa macchina può girare una applet con tutte le restrizioni e contemporaneamente o no un'altra applet senza restrizioni.

    Originariamente inviato da Epris
    Per dire il file del client può dare permessi su operazioni sul server?
    No.

    Originariamente inviato da Epris
    2) se do tutti i permessi quali rischi posso correre?
    Dipende da cosa fa il codice. Se il codice è "serio", nessun rischio. Se hai fatto girare qualcosa di "malizioso" a cui hai dato volontariamente permessi magari anche solo perché non hai verificato cosa fa o da chi/dove proviene .... beh, i rischi potenzialmente ci sono.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3

    Re: Re: [java] file di policy e sicurezza

    Originariamente inviato da andbin
    Ecco, iniziamo a precisare cosa intendi. Si tratta di applicazioni "standalone", cioè per intenderci una applicazione Java che ha come "entry point" il classico metodo main(String[]) ?

    Perché la questione è che le normali applicazioni Java standalone possono fare tutto quello che vogliono senza restrizioni, perché per default non è installato un "security manager".

    Se invece mi parli di "applet" (o altro di più particolare) ... è un altro discorso e le cose cambiano.
    nello specifico parlo di un applicazione client server rmi

    Teoricamente mica è detto .... dipende se e cosa bisogna permettere.

    Quindi sì, centra la macchina locale ma la questione riguarda una certa istanza della JVM. Sulla stessa macchina può girare una applet con tutte le restrizioni e contemporaneamente o no un'altra applet senza restrizioni.

    ok, quindi questo significa che se anche sbaglio i permessi questi sono solo relativi a quella particolare istanza della jvm. Non assegno quei processi anche ad altri programmi in esecuzione
    Dipende da cosa fa il codice. Se il codice è "serio", nessun rischio. Se hai fatto girare qualcosa di "malizioso" a cui hai dato volontariamente permessi magari anche solo perché non hai verificato cosa fa o da chi/dove proviene .... beh, i rischi potenzialmente ci sono.
    è codice che ho scritto io, quindi so che fa. quindi teoricamente se ho capito bene se anche dessi tutti i permessi al lato server dal lato client non possono sfruttare questa cosa non so tipo per accedere alla directory in cui è presente il codice?
    Fondamentalmente visto che so i due codici che fanno.. potrei anche evitare di mettere in piedi tutto questo meccanismo.
    Ho le idee un po' confuse perché non capisco bene da cosa dovreiu proteggermi o proteggere chi usa il mio programma

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Re: Re: [java] file di policy e sicurezza

    Originariamente inviato da Epris
    parlo di un applicazione client server rmi
    Non vuol dire ancora nulla di chiaro e preciso. Come parte?

    Originariamente inviato da Epris
    ok, quindi questo significa che se anche sbaglio i permessi questi sono solo relativi a quella particolare istanza della jvm. Non assegno quei processi anche ad altri programmi in esecuzione
    Se parliamo di file di "policy" le cose vanno in questo modo: un file di policy può stare in diversi posti.
    Può essere "system-wide" se messo nella lib/security di un runtime java.

    Un file:
    C:\Programmi\Java\jre6\lib\security\java.policy

    influenza qualunque codice (che gira controllato da un Security manager) su questo runtime in particolare. Non centra ad esempio con un altro runtime es. in C:\Programmi\Java\jre1.4.2_17.

    Può essere "per-user", cioè un file .java.policy (nota: punto iniziale) nella "home" dell'utente. Questo riguarda l'utente, qualunque sia il runtime Java.

    Può anche essere specificato con appositi parametri dell'eseguibile 'java', quindi per una certa singola invocazione della JVM.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5

    Re: Re: Re: Re: [java] file di policy e sicurezza

    Originariamente inviato da andbin
    Non vuol dire ancora nulla di chiaro e preciso. Come parte?
    In che senso come parte?
    C'è un richiamo al security manager
    codice:
    System.setSecurityManager(new RMISecurityManager());
    lancio il jar scrivendo
    java -Dsecurityec...=file.policy -jar file.jar

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.