All Packages Class Hierarchy This Package Previous Next Index
Class it.unipi.di.vserver.SecurityFilter
java.lang.Object
|
+----it.unipi.di.vserver.SecurityFilter
- public abstract class SecurityFilter
- extends Object
Questa classe rappresenta un filtro di sicurezza. Per realizzare
un filtro di questo tipo è necessario ridefinire i metodi
di questa classe. I metodi attach() permettono di attacarsi allo
stream da rendere sicuro (è assicurato che siano al liello
più basso nella catena degli stream, subito attaccati al soket)
mentre i metodi handshake vengono invocati una volta agganciati gli
stream per permettere l'handshake nella connessione.
Per i filtri più semplici si suggerisce di usare il
FilterInputStream e il FilterOutputStream da estendere per effettuare
la connessione. A volte puograve; essere sufficiente ridefinire solo gli
handshake non richiedendo cifratura del canale. L'handshake è il
momento ideale in cui scambiarsi le chiavi per realizzare un canale
sicuro.
- Version:
- 1.0
- Author:
- Antonio Cisternino
-
cleanIn
- Stream passato ad attach().
-
cleanOut
- Stream passato ad attach().
-
isServerSide
- Dice se il filtro di sicurezza è lato server
oppure lato client.
-
SecurityFilter()
-
-
_attach(InputStream)
- Chiama attach(in) dopo aver aggiornato cleanIn;
-
_attach(OutputStream)
- Chiama attach(out) dopo aver aggiornato cleanOut;
-
attach(InputStream)
- Attacca il filtro di sicurezza all'input stream.
-
attach(OutputStream)
- Attacca il filtro di sicurezza all'output stream.
-
clientSideHandshake()
- Protocollo handshake lato client.
-
handshake(StatisticInfo)
- Chiama la procedura di handshake corretta a seconda che
il filtro sia del server oppure del client.
-
newInstance()
- Restituisce una nuova istanza del security filter.
-
serverSideHandshake()
- Protocollo handshake lato server.
-
setClient()
- Dice che il filtro è lato client;
-
setServer()
- Dice che il filtro è lato server;
isServerSide
private boolean isServerSide
- Dice se il filtro di sicurezza è lato server
oppure lato client.
cleanIn
protected InputStream cleanIn
- Stream passato ad attach().
cleanOut
protected OutputStream cleanOut
- Stream passato ad attach().
SecurityFilter
public SecurityFilter()
_attach
InputStream _attach(InputStream in)
- Chiama attach(in) dopo aver aggiornato cleanIn;
- Parameters:
- in - Stream da filtrare
- Returns:
- attach(in)
_attach
OutputStream _attach(OutputStream out)
- Chiama attach(out) dopo aver aggiornato cleanOut;
- Parameters:
- in - Stream da filtrare
- Returns:
- attach(out)
attach
protected InputStream attach(InputStream in)
- Attacca il filtro di sicurezza all'input stream. Per default
restituisce lo stream passato come parametro e inizializza
il membro in.
- Parameters:
- in - Stream da filtrare
- Returns:
- Stream filtrato
attach
protected OutputStream attach(OutputStream out)
- Attacca il filtro di sicurezza all'output stream. Per default
restituisce lo stream passato come parametro e inizializza
il membro out.
- Parameters:
- out - Stream da filtrare
- Returns:
- Stream filtrato
serverSideHandshake
protected abstract boolean serverSideHandshake() throws IOException
- Protocollo handshake lato server.
- Returns:
- true se ha avuto esito positivo.
- Throws: Errore
- di comunicazione nel canale.
clientSideHandshake
protected abstract boolean clientSideHandshake() throws IOException
- Protocollo handshake lato client.
- Returns:
- true se ha avuto esito positivo.
- Throws: Errore
- di comunicazione nel canale.
handshake
boolean handshake(StatisticInfo info) throws IOException
- Chiama la procedura di handshake corretta a seconda che
il filtro sia del server oppure del client.
- Returns:
- true se l'handshake ha avuto esito positivo.
setServer
void setServer()
- Dice che il filtro è lato server;
setClient
void setClient()
- Dice che il filtro è lato client;
newInstance
public abstract SecurityFilter newInstance()
- Restituisce una nuova istanza del security filter.
Viene invocato dalla classe Server quando viene
accettato un cliente.
All Packages Class Hierarchy This Package Previous Next Index