diff options
Diffstat (limited to 'spss.handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java')
-rw-r--r-- | spss.handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/spss.handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java b/spss.handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java deleted file mode 100644 index 712c9dbe7..000000000 --- a/spss.handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java +++ /dev/null @@ -1,125 +0,0 @@ -package at.gv.egovernment.moa.spss.handbook.clients.webservice; - -import java.security.Security; - -import com.sun.net.ssl.internal.ssl.Provider; - -/** - * Diese Klasse implementiert einen einfachen Client für das MOA SP/SS Webservice mittels Apache Axis. Die - * Verbindung erfolgt gesichert über SSL, und zwar nur mit Serverauthentisierung. - */ -public class HTTPSServerAuth extends HTTP -{ - // JSSE Konstanten - public static final String HANDLER = "java.protocol.handler.pkgs"; - public static final String TRUSTSTORE = "javax.net.ssl.trustStore"; - public static final String TRUSTSTOREPASSWORD = "javax.net.ssl.trustStorePassword"; - public static final String TRUSTSTORETYPE = "javax.net.ssl.trustStoreType"; - - /** - * Methode main. - * - * Enthält den Beispielcode der nötig ist um von Java aus auf MOA-SPSS zugreifen zu können. Der Zugriff - * passiert über das AXIS-Framework. Die Verbindung erfolgt gesichert über SSL, und zwar nur mit - * Serverauthentisierung. - * - * @param args <ul> - * <li> - * args[0] enthält entweder die Bezeichnung "sign" oder "verify" zur Kennzeichnung, - * ob ein Signaturerstellungsrequest, oder ein Signaturprüfrequest gesendet werden soll. - * </li> - * <li> - * args[1] enthält einen Verweis auf eine Property-Datei, die die nähere Konfiguration - * für dieses Beispiel enthält. Der Verweis enthält entweder eine absolute oder eine - * relative Pfadangabe, wobei eine relative Angabe als relativ zum Arbeitsverzeichnis der - * Java VM interpretiert wird. Folgende Properties müssen in der Properties-Datei vorhanden - * sein: - * <ul> - * <li> - * <code>signServiceQName</code>: Name des Webservices, fix "SignatureCreation" - * </li> - * <li> - * <code>signServiceEndPoint</code>: Zugangspunkt des Webservices (URL) - * </li> - * <li> - * <code>signRequest</code>: Name des zu sendenden Signaturerstellungsrequests (entweder - * absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum - * Arbeitsverzeichnis der Java VM interpretiert) - * </li> - * <li> - * <code>verifyServiceQName</code>: Name des Webservices, fix "SignatureVerification" - * </li> - * <li> - * <code>verifyServiceEndPoint</code>: Zugangspunkt des Webservices (URL) - * </li> - * <li> - * <code>verifyRequest</code>: Name des zu sendenden Signaturprüfrequests (entweder - * absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum - * Arbeitsverzeichnis der Java VM interpretiert) - * </li> - * <li> - * <code>ssl.truststore.type</code>: Typ des JSSE-Truststores (entweder "JKS" für einen - * Java Key Store oder "PKCS12" für eine PKCS#12-Datei). - * </li> - * <li><code>ssl.truststore.type</code>: Relativer oder absoluter Pfad zum JSSE-Truststore. - * Ein relativer Pfad wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). - * </li> - * <li><code>ssl.truststore.pwd</code>: Passwort für den JSSE-Truststore. - * </li> - * </ul> - * </li> - * </ul> - */ - public static void main(String[] args) - { - try - { - // Prüfen, ob Beispiel korrekt verwendet wird - checkArgs(args, "HTTP"); - - // Initialisieren des Clients - HTTPSServerAuth httpClient = new HTTPSServerAuth(args); - - // Ausführen der Serviceabfrage - httpClient.execute(args[0]); - } - catch (Exception e) - { - e.printStackTrace(); - } - } - - /** - * Erzeugt den MOA Client. Es erfolgt die Auswertung der übergebenen Aufrufparameter. - * - * @param args Die Aufrufparameter für das Beispiel. Siehe {@link HTTPSServerAuth#main(String[])}. - * - * @throws Exception wenn der MOA Client mit den übergebenen Aufrufparametern nicht korrekt erzeugt - * werden konnte. - */ - protected HTTPSServerAuth(String[] args) throws Exception - { - super(args); - configureSSL(); - } - - /** - * Konfiguriert JSSE für eine SSL-Verbindung mit Serverauthentisierung. - * - * @throws Exception wenn die Konfiguration von JSSE fehlschlägt. - */ - protected void configureSSL() throws Exception - { - // Aktivieren Sie die nächste Zeile für detailliertes Logging des SSL-Verbindungsaufbaus - // System.setProperty("javax.net.debug", "all"); - - // Setzen des korrekten Protokoll-Handlers für https - Security.addProvider(new Provider()); - System.setProperty(HANDLER, "com.sun.net.ssl.internal.www.protocol"); - - // Konfiguriere Trust-Store (enthält SSL-Zertifikat des MOA Services, dem vertraut wird) - System.setProperty(TRUSTSTORETYPE, getProperty("ssl.truststore.type")); - System.setProperty(TRUSTSTORE, getProperty("ssl.truststore.loc")); - System.setProperty(TRUSTSTOREPASSWORD, getProperty("ssl.truststore.pwd")); - } -}
\ No newline at end of file |