Das [Intersult SSL Maven Plugin] bietet die Möglichkeit [HTTPS|http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol_Secure] Zertifikate in die aktuelle [Virtuelle Maschine|Java] zu importieren. Das [Intersult SSL Maven Plugin] ist aus dem [Intersult Maven Repository] zu beziehen.

!!!Anwendung
In Build-Prozessen können Ressourcen aus HTTPS-gesicherten Quellen bezogen werden. Betroffen sein können:

* Maven-Artifakte
* WSDL-Dateien für Web-Services
* Andere Quellen, auf die mit URLs verwiesen wird

Der Import eines Zertifikats unterstützt folgende Parameter:

||Name||Default||Bedeutung
|keyStoreKey|changeit|Passwort für den Java Keystore, falls dieser geändert wurde.
|proxyHost|-|Zu verwendender HTTP-Proxy-Hostname oder IP-Adresse.
|proxyPort|3128|Zu verwendender HTTP-Proxy-Port.

Die Zertifikate unterstützen URL und Alias. Die URL kann eine File-URL oder jede andere URL darstellen. Die Angabe des Alias ist optional, falls nicht angegeben wird der Dateiname verwendet (ohne Pfad, Domain etc.)

{{{
    ...
    <certificates>
	<certificate>
	    <alias>ALIAS</alias>
            <url>URL-TO-CERTIFICATE</url>
	</certificate>
	...
    </certificates>
    ...
}}}

!Ablauf
# Zunächst wird der Alias im Keystore gesucht.
# Wird er gefunden, wird mit dem nächsten Zertifikat fortgefahren.
# Falls der Alias nicht gefunden wurde, wird die URL geöffnet.
# Falls sich das Zertifikat bereits im Keystore befindet, wird der Alias geändert.
# Andernfalls wird das Zertifikat im Keystore importiert.

!Hinweis
Die URL wird nur geöffnet, falls sich das Zertifikat nicht im Keystore befindet. Falls das Plugin standardmäßig ausgeführt wird, wird also kein Netzwerk-Traffic erzeugt.

!!!Beispiel
Das Plugin kann in der pom.xml folgendermaßen konfiguriert werden:

{{{
        ...
	<plugin>
		<groupId>com.intersult</groupId>
		<artifactId>ssl-maven-plugin</artifactId>
		<version>1.0-SNAPSHOT</version>
		<executions>
			<execution>
				<id>import-cert</id>
				<goals>
					<goal>import-cert</goal>
				</goals>
				<configuration>
					<certificates>
						<certificate>
							<url>http://www.startssl.com/certs/ca.crt</url>
						</certificate>
						<certificate>
							<url>http://www.startssl.com/certs/sub.class1.server.ca.crt</url>
						</certificate>
					</certificates>
				</configuration>
			</execution>
		</executions>
	</plugin>
	...
}}}

__Erklärung:__ Zunächst 

!!!Proxy
{{{
        ...
	<configuration>
	        <proxyHost>someproxy</proxyHost>
	        <proxyPort>3128</proxyPort>
	        ...
	</configuration>
}}}